回答:
[0, 1, 2]が数値ラベルであり、インデックスではない場合、pandas.DataFrame.pivot_table機能します。
[]:
data = pd.DataFrame.from_records(
[[0、 'A']、[0、 'B']、[1、 'B']、[1、 'C']、[1、 'D']、[2、 'B']、[ 2、 'D']]、
columns = ['number_label'、 'category'])
data.pivot_table(index = ['number_label']、columns = ['category']、aggfunc = [len]、fill_value = 0)
アウト[]:
レン
カテゴリABCD
number_label
0 1 1 0 0
1 0 1 1 1
2 0 1 0 1
このブログ投稿は役に立ちました:http : //pbpython.com/pandas-pivot-table-explained.html
[0, 1, 2]がインデックスである場合、それcollections.Counterは役に立ちます:
[]:
data2 = pd.DataFrame.from_dict(
{'カテゴリ':{0:['A'、 'B']、1:['B'、 'C'、 'D']、2:['B'、 'D']}})
data3 = data2 ['categories']。apply(collections.Counter)
pd.DataFrame.from_records(data3).fillna(value = 0)
アウト[]:
あいうえお
0 1 1 0 0
1 0 1 1 1
2 0 1 0 1