我正在用 Pandas 解析几个 csv 文件并将它们连接成一个大数据帧。然后,我想groupby计算mean().
这是一个示例数据框:
df1.head()
Time Node Packets
0 1 0 0
2 1 1 0
4 1 2 0
6 1 3 0
8 1 4 0
df1.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
Int64Index: 27972 entries, 0 to 55942
Data columns (total 3 columns):
Time 27972 non-null int64
Node 27972 non-null int64
Packets 27972 non-null int64
dtypes: int64(3)
memory usage: 874.1 KB
None
然后我将它们连接起来(为了简单起见,三个数据帧)
df_total = pd.concat([df1, df2, df3])
df_total.info(verbose=True) 结果是
<class 'pandas.core.frame.DataFrame'>
Int64Index: 83916 entries, 0 to 55942
Data columns (total 3 columns):
Time 83916 non-null object
Node 83916 non-null object
Packets 83916 non-null object
dtypes: object(3)
memory usage: 2.6+ MB
None
最后,我尝试:
df_total = df_total.groupby(['Time'])['Packets'].mean()
这就是错误pandas.core.base.DataError: No numeric types to aggregate出现的地方。
虽然我从其他职位如明白这是熊猫改变dtype因为non-null,我无法解决提出的解决方案我的问题。
我该如何解决?
翻阅古今
相关分类