python-3.x - 数据框中的最高频率

标签 python-3.x pandas

我正在寻找一种方法来获得整个 pandas 中的最高频率,而不是在特定的列中。我已经查看了值计数,但似乎以特定于列的方式工作。有办法做到吗?

最佳答案

使用DataFrame.stackSeries.mode对于最高值,对于首先按位置选择:

df = pd.DataFrame({
         'B':[4,5,4,5,4,4],
         'C':[7,8,9,4,2,3],
         'D':[1,3,5,7,1,0],
         'E':[5,3,6,9,2,4],

})

a = df.stack().mode().iat[0]
print (a)
4

或者如果需要频率也可以使用 Series.value_counts :

s = df.stack().value_counts()
print (s)
4    6
5    4
3    3
9    2
7    2
2    2
1    2
8    1
6    1
0    1
dtype: int64

print (s.index[0])
4

print (s.iat[0])
6

关于python-3.x - 数据框中的最高频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60544330/

相关文章:

python - win32com + Outlook 每次执行仅捕获收件箱中 50% 的邮件

python - Pandas - 根据组值和列值有效地连接行

python - 如何在不使用 .drop 命令中的所有级别的情况下从 multiindex Dataframe 中删除数据?

pandas - NLP:根据分隔符创建 spaCy Doc 对象或组合多个 Doc 对象以形成单个对象

python / Pandas :How does one pivot a table whereby the unique values in a specified multi -index or column form part of the resultant column name?

python - 删除pandas字符串列中的重复字符?

python - 如何将字典的字典展开到 pandas DataFrame 中以获得更大的字典?

python - 如何在没有numpy的情况下使用范围填充矩阵?

python-3.x - 安装python-binance时出错

python - 阿姆斯特朗/自恋数字,以 16 为底/十六进制