0
我有一个数据框命名为df,它看起来像下面,我想将5行转换为合并它们的单个行。但 df=df.groupby(df.index).sum()
似乎不适用于前两列,任何想法为什么以及如何纠正它? 熊猫数据框合并在行
我有一个数据框命名为df,它看起来像下面,我想将5行转换为合并它们的单个行。但 df=df.groupby(df.index).sum()
似乎不适用于前两列,任何想法为什么以及如何纠正它? 熊猫数据框合并在行
GroupBy.sum()方法将忽略所有不是数字的dtypes。
演示:
In [137]: df
Out[137]:
a b c s date
0 9 2 6 __6 2001-01-01
1 0 1 2 __2 2001-01-02
2 6 7 5 __5 2001-01-03
3 6 8 5 __5 2001-01-04
4 0 3 8 __8 2001-01-05
In [138]: df.groupby('a').sum()
Out[138]:
b c
a
0 4 10
6 15 10
9 2 6
In [139]: df.dtypes
Out[139]:
a int32
b int32
c int32
s object
date datetime64[ns]
dtype: object
但是,我的所有列的数据类型为float64 –
@JayanthKumar,我从来没有看到之前浮动值,比如'BL';)(怎么样'EVENT_ID'列)? – MaxU
我实际上是指新合并数据框中的列(不包括EVENT_ID列)。请参阅“ACTVOFT”栏。在合并的数据框中,它打印出7,但实际上它应该是2?我的问题是为什么是这样,该列的dtype是float64 –