Python 数据帧模式函数

Python 数据帧模式函数,python,pandas,dataframe,Python,Pandas,Dataframe,您好,我想问一下,我正在使用df.mode()函数查找一行中最常见的。这会给我一个额外的专栏我怎么可能只有一个专栏?我正在使用df.模式(轴=1) 例如,我有一个数据帧 0 1 2 3 4 1 1 0 1 1 1 2 0 1 0 0 1 3 0 0 1 1 0 所以我想要输出 1 1 2 0 3 0 但是我越来越 1 1 NaN 2 0 NaN 3 0 NaN 有人知道为什么吗?您尝试的代码在Python 3.7.6和Pandas 1.0.3中提供了预期的输出 i

您好,我想问一下,我正在使用df.mode()函数查找一行中最常见的。这会给我一个额外的专栏我怎么可能只有一个专栏?我正在使用df.模式(轴=1) 例如,我有一个数据帧

   0 1 2 3 4
1  1 0 1 1 1
2  0 1 0 0 1 
3  0 0 1 1 0
所以我想要输出

1  1
2  0
3  0
但是我越来越

1  1 NaN
2  0 NaN
3  0 NaN

有人知道为什么吗?

您尝试的代码在Python 3.7.6和Pandas 1.0.3中提供了预期的输出

import pandas as pd

df = pd.DataFrame(
    data=[[1, 0, 1, 1, 1], [0, 1, 0, 0, 1], [0, 0, 1, 1, 0]], 
    index=[1, 2, 3])
df

列中可能存在不同的数据类型,并且无法使用模式来比较不同数据类型的列


使用str()或int()将df.series转换为合适的数据类型。在使用模式(轴=1)之前,确保df中的数据类型一致。

df。模式(1)
。我使用的是完全相同的,但如果我在我的大数据集上使用它,它将不会像这样,然后有两列,如我所示。你知道为什么吗?
    0   1   2   3   4
1   1   0   1   1   1
2   0   1   0   0   1
3   0   0   1   1   0
df.mode(axis=1)
    0
1   1
2   0
3   0