AttributeError: 'DataFrame' 对象没有属性

新手上路,请多包涵

尝试在 ipython 中运行此文件时,我不断收到不同的属性错误…熊猫初学者,所以也许我遗漏了一些东西

代码:

 from pandas import Series, DataFrame

import pandas as pd

import json

nan=float('NaN')
data = []
with open('file.json') as f:
for line in f:
    data.append(json.loads(line))

df = DataFrame(data, columns=['accepted', 'user', 'object', 'response'])
clean = df.replace('NULL', nan)
clean = clean.dropna()

print clean.value_counts()

AttributeError: 'DataFrame' object has no attribute 'value_counts'

有任何想法吗?

原文由 user2884350 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 753
2 个回答

value_countsSeries 方法而不是 DataFrame 方法(并且您正试图在 DataFrame 上使用它, clean )。您需要在特定列上执行此操作:

 clean[column_name].value_counts()

在 DataFrame 上执行 value_counts 通常没有意义,但我想你可以通过展平底层值数组将它应用于每个条目:

 pd.value_counts(df.values.flatten())

原文由 Andy Hayden 发布,翻译遵循 CC BY-SA 3.0 许可协议

要获取数据框中所有列的所有计数,只需 df.count()

原文由 szeitlin 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题