我想將幾列數據添加到現有數據框中。數據框本身是從許多其他數據框構建的,我成功地加入了索引,這些索引是相同的。對於這一點,我用這樣的代碼:熊貓:根據列數據合併或加入數據框?
data = p_data.join(r_data)
其實我加入這一個多指標,因此數據幀看起來像以下,其中名稱1和名稱2指數:
Name1 Name2 present r behavior
a 1 1 0 0
2 1 .5 2
4 3 .125 1
b 2 1 0 0
4 5 .25 4
8 1 0 1
所以Name1索引不重複數據,但Name2索引確實(我正在使用它來跟蹤二元組,所以Name1 & Name2一起只表示一次)。我現在想要添加的是與Name2數據對應的4列數據(有關第二個成員的信息)。與「當前」「r」和「行爲」數據不同,這些數據是每個人的數據,而不是每對數據。所以在合併時我不需要考慮Name1數據。
的問題是,雖然重複名稱2數據被用盡的對子連擊,在數據中的「NAME2」列現在我想只添加具有一個片每名稱2個人的數據:
Name2 Data1 Data2 Data3
1 80 6 1
2 61 8 3
4 45 7 2
8 30 3 6
我想什麼輸出看起來像:
Name1 Name2 present r behavior Data1 Data2 Data3
a 1 1 0 0 80 6 1
2 1 .5 2 61 8 3
4 3 .125 1 45 7 2
b 2 1 0 0 61 8 3
4 5 .25 4 45 7 2
8 1 0 1 30 3 6
儘管閱讀文檔,我不是我是否可以使用join()方法或合併()爲期望的結果清晰。如果我嘗試對現有數據框進行連接,就像之前使用的簡單連接一樣,那麼我最終會得到新的列,但它們充滿了NaN值。我也嘗試過使用Name1和Name2作爲列或索引的各種組合,可以使用連接或合併(不像聽起來那樣隨意,但我顯然不能正確解釋文檔!)。非常感謝您的幫助,因爲我目前非常失落。
這工作 - 我必須一直在設置錯誤的參數,因爲這是我嘗試的方法之一。很高興知道我不是在完全錯誤的方向上游蕩。) –