gpt4 book ai didi

python - 在pivot_table pandas之后丢失值

转载 作者:行者123 更新时间:2023-12-01 00:09:42 31 4
gpt4 key购买 nike

我有以下数据框:

df.between_time('09:00', '09:05').head(10)

Qtd Preço Núm CC CV Agr
Hora
2020-01-19 09:05:00 5 4073.5 734 1618-Ideal 308-Clear Vendedor
2020-01-19 09:05:00 5 4073.5 733 1618-Ideal 120-Genial Vendedor
2020-01-19 09:05:00 5 4073.5 732 120-Genial 1618-Ideal Vendedor
2020-01-19 09:05:00 10 4074.0 731 045-C Suisse 127-Tullett Vendedor
2020-01-19 09:05:00 5 4074.0 730 120-Genial 127-Tullett Vendedor
2020-01-19 09:05:00 5 4074.0 729 072-Bradesco 127-Tullett Vendedor
2020-01-19 09:05:00 5 4074.0 728 008-UBS 003-XP Vendedor
2020-01-19 09:04:59 20 4074.5 727 262-Mirae 122-BGC Comprador
2020-01-19 09:04:59 5 4074.5 726 072-Bradesco 122-BGC Vendedor
2020-01-19 09:04:59 35 4074.5 725 008-UBS 122-BGC Vendedor

尝试旋转表时,值从 int 更改为 float 并且结果值与实现的值不匹配:
df.between_time('09:00', '09:05').head(10).pivot_table(index = 'Preço', columns = 'Agr', values = 'Qtd')

Agr Comprador Vendedor
Preço
4073.5 NaN 5.00
4074.0 NaN 6.25
4074.5 20.0 20.00

卖家列收到一个不可能的值 (6.25),因为在第一个数据帧中只有整数值。

如何解决这个问题,以便列收到列 Qty 的正确总和?

最佳答案

DataFrame.pivot_table 中的默认聚合函数是 np.mean ,所以有必要添加 aggfunc='sum' :

df1 = (df.between_time('09:00', '09:05')
.head(10)
.pivot_table(index = 'Preço', columns = 'Agr', values = 'Qtd', aggfunc='sum'))

详情 :
print (df.pivot_table(index = u'Preco', columns = 'Agr', values = 'Qtd', aggfunc='sum'))
Agr Comprador Vendedor
Preço
4073.5 NaN 15.0
4074.0 NaN 25.0
4074.5 20.0 40.0

关于python - 在pivot_table pandas之后丢失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59811530/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com