【发布时间】:2019-01-14 22:49:21
【问题描述】:
我是 Python 新手,我正在尝试绘制一个布尔数组。但是,我遇到了一个错误,尽管其他人似乎对绘制布尔数组没有任何问题。
对于数值数组,它按预期工作。所以,下面的代码可以正常工作。
import pandas as pd
series_numeric = pd.Series([0,1,0])
series_numeric.plot()
但是,对于布尔数组,会发生错误。这是代码:
import pandas as pd
series_bool = pd.Series([False,True,False])
series_bool.plot()
它会抛出以下错误:
TypeError: Empty 'DataFrame': no numeric data to plot
但是,这很奇怪,因为this video(1:45:48)的演讲者在绘制布尔数组时似乎没有任何问题。
希望任何人都可以提供帮助!
【问题讨论】:
-
您使用的是什么
pandas版本? -
可以用pandas复制
0.22.0,这看起来像个bug -
这是我预期的错误。我可能在视频中错过了它,尽管我没有看到他在哪里绘制布尔值。您希望
series_bool.plot()生成的图形是什么样的? -
我使用的是 Pandas 0.23.4 版。
-
我也有同样的问题。如果您想查看零和一,那么 boolean 不是您想要的类型。只需将
astype与float或int一起使用。正如@Peyman 所示。为简洁起见,您也可以series_bool.mul(1).plot()。
标签: python arrays pandas plot boolean