web-dev-qa-db-ja.com

AttributeError: 'DataFrame'オブジェクトには属性がありません

pandasでipython ... beginnerでこのファイルを実行しようとすると、さまざまな属性エラーが発生し続けます。

コード:

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'

何か案は?

18
user2884350

value_counts は、DataFrameメソッドではなく、Seriesメソッドです(そして、あなたはそれをDataFrame、cleanで使用しようとしています)。特定の列でこれを実行する必要があります。

clean[column_name].value_counts()

通常、value_counts DataFrameでは、基になる値の配列をフラット化することで、すべてのエントリに適用できると思いますが:

pd.value_counts(df.values.flatten())
26
Andy Hayden

データフレーム内のすべての列のすべてのカウントを取得するには、単にdf.count()

9
szeitlin