【发布时间】:2016-09-16 22:05:49
【问题描述】:
我有一个包含三列的 pandas 数据框,我正在使用以下代码分别绘制每一列:
data.plot(y='value')
生成这样的图形:
我需要的是这些值的一个子集,而不是全部。例如,我想在第 500 到 1000 行而不是从 0 到 3500 处绘制值。知道如何告诉绘图函数只选择那些吗?
谢谢
【问题讨论】:
我有一个包含三列的 pandas 数据框,我正在使用以下代码分别绘制每一列:
data.plot(y='value')
生成这样的图形:
我需要的是这些值的一个子集,而不是全部。例如,我想在第 500 到 1000 行而不是从 0 到 3500 处绘制值。知道如何告诉绘图函数只选择那些吗?
谢谢
【问题讨论】:
使用iloc 分割你的df:
data.iloc[499:999].plot(y='value')
这将从第 500 行切到但不包括第 1000 行
例子:
In [35]:
df = pd.DataFrame(np.random.randn(10,2), columns=list('ab'))
df.iloc[2:6]
Out[35]:
a b
2 0.672884 0.202798
3 0.514998 1.744821
4 -1.982109 -0.770861
5 1.364567 0.341882
df.iloc[2:6].plot(y='b')
【讨论】: