Suppoose df.bun
(df - это фрейм данных Pandas) - это мультииндекс (дата и имя) с переменной, являющейся значением категории, записанным в строке,
date name values
20170331 A122630 stock-a
A123320 stock-a
A152500 stock-b
A167860 bond
A196030 stock-a
A196220 stock-a
A204420 stock-a
A204450 curncy-US
A204480 raw-material
A219900 stock-a
Как я могу сделать это, чтобы представить общее число в ту же дату и его процент, чтобы составить таблицу, как показано ниже, с каждой датой,
date variable counts Percentage
20170331 stock 7 70%
bond 1 10%
raw-material 1 10%
curncy 1 10%
Я сделал print(df.groupby('bun').count())
, прибегнув к этому вопросу, но ему не хватает ..
cf) Перед получением df.bun я использовал следующий код для импорта вложенного словаря в фрейм данных Pandas.
import numpy as np
import pandas as pd
result = pd.DataFrame()
origDict = np.load("Hannah Lee.npy")
for item in range(len(origDict)):
newdict = {(k1, k2):v2 for k1,v1 in origDict[item].items() for k2,v2 in origDict[item][k1].items()}
df = pd.DataFrame([newdict[i] for i in sorted(newdict)],
index=pd.MultiIndex.from_tuples([i for i in sorted(newdict.keys())]))
print(df.bun)