创建一个新的DataFrame只获取变量= True的列

时间:2017-09-08 21:13:23

标签: python-3.x pandas matplotlib dataframe

Python中还是新手。 我发现当绘制x轴的一部分(日期)时,使用plt.show()总是将Y轴缩放到整个DataFrame 我在完整的DataFrame中创建了一个变量'plot',其值为False / True,具体取决于我想要绘制的Date范围。 如何使用“plot”值为“True”的所有数据创建一个新的DataFrame plotdata,以便重新缩放Y轴。

data['plot'] = (data['Date'] > startplot) & (data['Date'] <= end) 
print(data)
plotdata = pd.DataFrame()

plotdata = pd.DataFrame([data('plot') == 'True'])

我的打印(数据)如下所示:

     Date   Open   High    Low  Close    Volume   plot
0   2015-01-02  47.00  47.23  46.91  46.96  11421233  False

1   2015-01-05  47.08  47.16  46.56  46.57  18964458  False

2   2015-01-06  46.79  47.38  46.46  47.04  22950060  False

3   2015-01-07  46.92  47.04  46.05  46.19  20793637  False

.
.

644 2017-07-25  43.90  44.17  43.81  43.98   9818802   True

645 2017-07-26  44.80  44.83  44.28  44.40  19045166   True

646 2017-07-27  46.26  47.84  45.95  47.81  44702494   True

647 2017-07-28  47.70  48.38  47.12  47.94  25296508   True

我搜索过并且看了很多但没有成功。希望有人有解决方案。谢谢/亨宁

1 个答案:

答案 0 :(得分:0)

这样的东西
plotdata=data[data['plot']]
plotdata
Out[470]: 
           Date   Open   High    Low  Close    Volume  plot
644  2017-07-25  43.90  44.17  43.81  43.98   9818802  True
645  2017-07-26  44.80  44.83  44.28  44.40  19045166  True
646  2017-07-27  46.26  47.84  45.95  47.81  44702494  True
647  2017-07-28  47.70  48.38  47.12  47.94  25296508  True