[英]Dividing an Dataframe by an measure with overlapping indexes results in NAN
當你做了分工,熊貓試圖同時匹配索引和列。 要獲得您期望的答案,您需要確保列名匹配。 簡而言之,使用
a.div(b.rename(columns={'base_size':'persuasion'}))
您也可以只划分感興趣的列; 例如
a['persuasion'].div(b['base_size'])
編輯:這是一個工作示例:
vals = ['nontriallist', 'triallist', 'user']
a = pd.DataFrame({'survey_components': 0,
'segment': 3 * vals,
'persuasion': 30 * np.random.rand(9)})
a = a.set_index(['survey_components', 'segment'])
b = pd.DataFrame({'survey_components': 0,
'segment': vals,
'base_size': 30 * np.random.rand(3)})
b = b.set_index(['survey_components', 'segment'])
a.div(b.rename(columns={'base_size':'persuasion'}))
輸出:
persuasion
survey_components segment
0 nontriallist 0.177813
nontriallist 4.815070
nontriallist 4.812900
triallist 2.502781
triallist 0.532746
triallist 0.935246
user 11.527919
user 9.329557
user 0.986049
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.