当轴=1不工作时,为什么要扩展计数

2024-04-26 12:42:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这样一个数据帧:

df = pd.DataFrame({'A': [0, 1, 2, np.nan, 4], 
               'B': [0, 1, 2, np.nan, 4], 
               'C': [0, 1, 2, np.nan, 4], 
               'D': [0, 1, 2, np.nan, 4], 
               'E': [0, 1, 2, np.nan, 4], 
               'F': [0, 1, 2, np.nan, 4]})

我希望数据框扩展(轴=1)。计数产生如下结果:

     A    B     C     D     E     F
0  1.0  2.0   3.0   4.0   5.0   6.0
1  1.0  2.0   3.0   4.0   5.0   6.0
2  1.0  2.0   3.0   4.0   5.0   6.0
3  0.0  0.0   0.0   0.0   0.0   0.0
4  1.0  2.0   3.0   4.0   5.0   6.0

但是,生成的结果与df2相同。expanding().count()将执行以下操作:

     A    B    C    D    E    F
0  1.0  1.0  1.0  1.0  1.0  1.0
1  2.0  2.0  2.0  2.0  2.0  2.0
2  3.0  3.0  3.0  3.0  3.0  3.0
3  3.0  3.0  3.0  3.0  3.0  3.0
4  4.0  4.0  4.0  4.0  4.0  4.0

我错过了什么?你知道吗


Tags: 数据dataframedfcountnpnanpd计数
1条回答
网友
1楼 · 发布于 2024-04-26 12:42:00

似乎expanding方法的axis参数与count()不一样。你知道吗

解决这个问题的方法是将数据转置,然后使用扩展方法和计数并将其转置回来。你知道吗

df1 = df.T.expanding().count().T
print(df1)

    A   B   C   D   E   F
0   1.0 2.0 3.0 4.0 5.0 6.0
1   1.0 2.0 3.0 4.0 5.0 6.0
2   1.0 2.0 3.0 4.0 5.0 6.0
3   0.0 0.0 0.0 0.0 0.0 0.0
4   1.0 2.0 3.0 4.0 5.0 6.0

相关问题 更多 >