【发布时间】:2019-06-29 21:50:05
【问题描述】:
我已将 groupby 方法应用于我的数据框 df,以便在我的列 X(百分比)的每个值处获得平均值
df1 = df.groupby('percentage')['ratio'].mean()
即对于每个百分比值,我有一个比率值的平均值(因为我有很多数据点)。
现在我想绘制新的百分比 (X) 与新的比率值 (Y),但我不能。 df1[:,0] 给我一条错误消息,好像它不是我的第一列的写调用。
如何绘制这两列?
这是df1的输出:
percentage
0.000000 0.987699
0.000144 0.974359
0.000461 0.930000
0.001427 0.880549
0.006119 0.968185
0.008497 0.968686
0.017821 0.970008
0.028747 0.976759
0.030128 0.975607
0.038823 0.979795
0.043440 0.979847
Name: ratio, Length: 61, dtype: float64
【问题讨论】:
-
你尝试了什么?
-
我现在只是尝试访问第一列。我不明白为什么 df1.iloc[:,0] 不将第一列作为输出。你能帮忙吗?
-
您遇到了什么错误?
-
索引错误:IndexingError Traceback(最近一次调用最后一次)
in ----> 1 df1.iloc[:,0] ~\Anaconda3\ lib\site-packages\pandas\core\indexing.py in __getitem__(self, key) 1470 except (KeyError, IndexError): 1471 pass -> 1472 return self._getitem_tuple(key) 1473 else: 1474 # 根据定义,我们只有第0轴 -
试试:
df1.reset_index().plot()
标签: python pandas matplotlib