我有類似這樣大熊貓師(.div)與多指標
df = pd.DataFrame(np.random.randint(2, 10, size = (5, 2)))
df.index = pd.MultiIndex.from_tuples([(1, 'A'), (2, 'A'), (4, 'B'),
(5, 'B'), (8, 'B')])
df.index.names = ['foo', 'bar']
df.columns = ['count1', 'count2']
df
一些東西,得到:
count1 count2
foo bar
1 A 6 7
2 A 2 9
4 B 6 7
5 B 4 6
8 B 5 6
我也有通過同樣從某處else- -obtained總數的列表'富' 指數:
totals = pd.DataFrame([2., 1., 1., 1., 10.])
totals.index = [1, 2, 4, 5, 8]
totals.index.names = ['foo']
totals
其給出:
0
foo
1 2
2 1
4 1
5 1
8 10
我怎麼能由是在總計 foo的數字除以DF(COUNT1和COUNT2)的所有列? (因此,我需要通過'富'數字匹配)
我檢查了this question,看起來它應該做的伎倆,但我無法弄清楚。
我試圖
df.div(totals, axis = 0)
和改變DIV的水平選項,但沒有成功。
與往常一樣,非常感謝您的時間
不幸的是,我沒有時間去成爲一個更詳細的解答。以下鏈接是否可以幫助你? http://stackoverflow.com/questions/13940753/aligning-dataframes-with-same-columns-different-index-levels –
這是一個重複的:http://stackoverflow.com/questions/19501510/divide-entire- pandas-multiindex-dataframe-by-dataframe-variable – Jeff
嗨,我檢查了這些答案並嘗試使用選項level = 0或level ='foo',但它不起作用。 Roman Pekar的回答如下,但我不明白爲什麼。 – cd98