Кадр данных обратный для отбрасывания (столбец =) - PullRequest
0 голосов
/ 07 декабря 2018

Я пытаюсь манипулировать кадром данных, используя функцию cumsum.

Мои данные выглядят так:

Для выполнения моего сбора я использую

df = pd.read_excel(excel_sheet, sheet_name='Sheet1').drop(columns=['Material']) # Dropping material column

Я запускаю остальную часть своего кодаи получить ожидаемый результат от совокупности данных без перечисленных материалов:

df2 = df.as_matrix() #Specifying Array format
new = df2.cumsum(axis=1)
print(new)

Однако в конце мне нужно заменить этот столбец материала.Я не уверен, как использовать функцию добавления, чтобы вернуть это в начало кадра данных.

1 Ответ

0 голосов
/ 07 декабря 2018

IIUC, тогда вы можете просто установить столбец material на индекс, затем выполнить свою сумму и вернуть ее в конце:

df2 = df.set_index('Material').cumsum(1).reset_index()

В качестве альтернативы можно использовать cumsum для всех столбцов, кроме первого:

df.iloc[:,1:] = df.iloc[:,1:].cumsum(1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...