当df有间隙时, plotly面积降为0 (=x轴)

  • 本文关键字:间隙 df plotly python plotly
  • 更新时间 :
  • 英文 :


我想绘制一个plotly.express.areapx.area(df, x="date", y="count_cum", color="topic")

这是df看起来的样子:

date                        topic  count_cum  count
0    2021-03-05                      topic_1          1      1
1    2021-03-05                      topic_2          1      1
2    2021-03-06                      topic_1          2      1
3    2021-03-07                      topic_1          3      1
4    2021-03-07                      topic_2          2      1

问题是在20121-03-06这一天topic_2的累积列不存在,topic_2的图形落到了0。有办法防止这种情况发生吗?或者如果没有,我怎么调整df?

如果阴谋做不到,我认为目标应该是这样的:

date                        topic  count_cum  count
0    2021-03-05                      topic_1          1      1
1    2021-03-05                      topic_2          1      1
2    2021-03-06                      topic_1          2      1
3    2021-03-06                      topic_2          1      0
4    2021-03-07                      topic_1          3      1
5    2021-03-07                      topic_2          2      1

您可以使用dataframe.interpolate()创建缺失值的插值,例如:

df = pd.DataFrame([(0.0, np.nan, -1.0, 1.0),
(np.nan, 2.0, np.nan, np.nan),
(2.0, 3.0, np.nan, 9.0),
(np.nan, 4.0, -4.0, 16.0)],
columns=list('abcd'))
df
a    b    c     d
0  0.0  NaN -1.0   1.0
1  NaN  2.0  NaN   NaN
2  2.0  3.0  NaN   9.0
3  NaN  4.0 -4.0  16.0
df.interpolate(method='linear', limit_direction='forward', axis=0)
a    b    c     d
0  0.0  NaN -1.0   1.0
1  1.0  2.0 -2.0   5.0
2  2.0  3.0 -3.0   9.0
3  2.0  4.0 -4.0  16.0

这里是官方文档:

https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.interpolate.html

这里有一个教程:

=https://www.geeksforgeeks.org/python-pandas-dataframe-interpolate/: ~:文本插入()% 20函数% 20 % 20基本上,比% 20硬% 2 dcoding % 20 % 20值。

请注意,这将是期望的实际值的近似值,这可能导致对的误解和对情节的错误分析.

最新更新