python - 应用于每一列的 Pandas value_counts

标签 python pandas dataframe

我有一个 dataframe,其中包含来自外部源(csv 文件)的大量列 (≈30),但其中有几个没有值或始终相同。因此,我想快速查看每列的 value_counts,我该怎么做?

例如

  Id, temp, name
1 34, null, mark
2 22, null, mark
3 34, null, mark

会返回一个对象说明

  • 编号:34 -> 2、22 -> 1
  • 温度:空 -> 3
  • 姓名:标记 -> 3

所以我会知道 temp 是无关紧要的,name 也不有趣(总是一样的)

最佳答案

对于数据框,

df = pd.DataFrame(data=[[34, 'null', 'mark'], [22, 'null', 'mark'], [34, 'null', 'mark']], columns=['id', 'temp', 'name'], index=[1, 2, 3]) 

下面的代码

for c in df.columns:
    print "---- %s ---" % c
    print df[c].value_counts()

将产生以下结果:

---- id ---
34    2
22    1
dtype: int64
---- temp ---
null    3
dtype: int64
---- name ---
mark    3
dtype: int64

关于python - 应用于每一列的 Pandas value_counts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23197324/

相关文章:

python - 将 QGIS 模块导入 Python (Anaconda)

python - 使用 pandas groupby 获取对应于最小值的行

python - 根据 diff 过滤 DataFrame,其中 bool 值重复

python - 如何使用变量值来调用数据框?

python - 使用参数时无法使用 PyMySQL 插入数据

python - 具有多个边界、约束和连续字段的 scipy.optimize

python - 如何在 numpy 数组中找到相同的实体?

python - 将 Pandas 系列向量化查找到字典

pandas - 如何在同一个 jupyter notebook cell 中显示多个 pandas 系列直方图?

有条件地从数据帧列表中删除数据帧