簡體   English   中英

將數據框除以具有重疊索引的量度會導致NAN

[英]Dividing an Dataframe by an measure with overlapping indexes results in NAN

給定以下數據框a和系列b

在此處輸入圖片說明

在此處輸入圖片說明

a.div(b)

產生以下 在此處輸入圖片說明

我期望系列/數據框與其索引匹配,並且要執行該操作,我在這里缺少什么?

當你做了分工,熊貓試圖同時匹配索引和列。 要獲得您期望的答案,您需要確保列名匹配。 簡而言之,使用

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM