熊猫groupby裁判栏

时间:2018-12-24 21:35:19

标签: python pandas

我串联了几个Pandas数据框,现在有一个较大的数据框。 初始数据帧看起来像这样

   Time  Node  Packets
0     1     0        0
2     1     1        0
4     1     2        0
6     1     3        0
8     1     4        0

运行df_total = df_total.groupby(['Time'])['Packets'].mean()

后,连接后的对象看起来像这样
Time
1.0      0.000000
2.0      1.250000
3.0      3.880952
4.0      6.797619
5.0     12.345238

如您所见,列标题Packets消失了。问题是我正在使用Seaborn绘制x个数据包的时间。

如何使用级联数据帧调用Seaborn线图?

sns.lineplot(df ['???'],legend = False,ax = ax1)

我尝试使用sns.lineplot(df['']),但是没有用。

2 个答案:

答案 0 :(得分:0)

df.groupby(['Time'],as_index=False)['Packets'].transform('mean') 

应该可以解决问题,但是您将重复使用具有多个平均值的列。

答案 1 :(得分:0)

您可以使用transform函数将Packets Mean添加为DataFrame中的一列:

df_total['Packets_mean'] = df_total.groupby(['Time'])['Packets'].transform('mean')