如何绘制没有 0 的数据帧的单列(直方图)
How to plot a single column of a dataframe with no 0s (histogram)
我有一个巨大的数据框,如下所示:
Date value
1 2022-01-01 00:00:00 0.000
2 2022-01-01 01:00:00 0.000
3 2022-01-01 02:00:00 0.000
4 2022-01-01 08:00:00 0.058
5 2022-01-01 09:00:00 4.419
6 2022-01-01 10:00:00 14.142
我只想在直方图中绘制 'value' 列但不包含 0 值。我该怎么做?
我试过了:
plt.hist(df['value' >0], bins=50)
plt.hist(df['value' =! 0], bins=50)
但运气不好。有什么想法吗?
非常感谢
df['value' > 0]
存在语法错误 -- 需要是 df[df['value'] > 0]
或 df[df.value > 0]
。
这个想法是你用 df.value
:
创建一个布尔索引
>>> df.value > 0
0 False
1 True
2 False
3 True
4 True
5 True
Name: value, dtype: bool
然后在 df
上使用该索引检索 True
索引:
>>> df[df.value > 0]
date value
1 2022/01/01 0.100
3 2022/01/01 0.058
4 2022/01/01 4.419
5 2022/01/01 14.142
在作图方面,也可以直接用pandas作图:
>>> df[df.value > 0].plot.hist(bins=50)
我有一个巨大的数据框,如下所示:
Date value
1 2022-01-01 00:00:00 0.000
2 2022-01-01 01:00:00 0.000
3 2022-01-01 02:00:00 0.000
4 2022-01-01 08:00:00 0.058
5 2022-01-01 09:00:00 4.419
6 2022-01-01 10:00:00 14.142
我只想在直方图中绘制 'value' 列但不包含 0 值。我该怎么做?
我试过了:
plt.hist(df['value' >0], bins=50)
plt.hist(df['value' =! 0], bins=50)
但运气不好。有什么想法吗?
非常感谢
df['value' > 0]
存在语法错误 -- 需要是 df[df['value'] > 0]
或 df[df.value > 0]
。
这个想法是你用 df.value
:
>>> df.value > 0
0 False
1 True
2 False
3 True
4 True
5 True
Name: value, dtype: bool
然后在 df
上使用该索引检索 True
索引:
>>> df[df.value > 0]
date value
1 2022/01/01 0.100
3 2022/01/01 0.058
4 2022/01/01 4.419
5 2022/01/01 14.142
在作图方面,也可以直接用pandas作图:
>>> df[df.value > 0].plot.hist(bins=50)