python / pandas = ошибка в сводной таблице? - PullRequest
0 голосов
/ 06 июля 2018

Я, должно быть, ослеп. Я хочу подвести некоторые цифры из таблицы. Как по моей идее, два следующих кода должны давать одинаковый вывод, но они этого не делают: У меня есть простой DF:

df[["Opportunity Group", "enjeu", "Montant"]].sample(10)

, что дает мне: enter image description here

Теперь для каждого клиента я хочу получить общую сумму df:

tab = df.pivot_table(index    = "Opportunity Group",
                    columns  = "enjeu"            ,
                    values   = "Montant"          ,
                    margins  = False              ,
                    aggfunc  = np.sum             ).fillna(0)
tab

Что дает мне: enter image description here но цифры неверны, и если я сделаю следующее:

df[df["Opportunity Group"]=="NUTANIX"].groupby("enjeu")["Montant"].sum()

Я не получаю те же цифры:

enjeu
(-1.0, 100.0]                     0.00
(100.0, 200.0]                    0.00
(200.0, 500.0]                    0.00
(500.0, 1000.0]                   0.00
(1000.0, 5000.0]               4208.64
(5000.0, 20000.0]             34393.65
(20000.0, 50000.0]           422983.67

Почему нет:

tab = df.pivot_table(index    = "Opportunity Group",
                    columns  = "enjeu"            ,
                    values   = "Montant"          ,
                    margins  = False              ,
                   aggfunc  = np.sum             ).fillna(0)

эквивалент конкретного запроса по группе, как для NUTANIX:

df[df["Opportunity Group"]=="NUTANIX"].groupby("enjeu")["Montant"].sum()

??

EDIT

столбец "enjeu" получает путаницу в сводной таблице До : enter image description here После : enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...