我使用Python並在熊貓數據框中有一個大型數據集。我已將這些數據的一部分放入另一個數據框中,在那裏我創建了一個新列並填充它。我現在想把這個新的列放回到原來的數據框中,覆蓋其中一個現有的列,但僅限於我編輯過的部分。通過索引將數據從一個數據框插入另一個數據框
請你幫忙建議這是如何做到最好?唯一的唯一標識符是自動生成的索引。第二個數據幀保持與較大值相同的索引值,所以它應該非常直接,但我不能解決如何a)引用自動創建的索引 b)使用這些索引覆蓋列中的現有數據另據幀
所以,它應該是這樣的(我意識到這是語法的混搭,但只是想更好地解釋什麼,我試圖做的!):
where df1.ROW.INDEX == df2.ROW.INDEX insert into
df1['col_name'].value from df2.['col_name'].value
任何幫助將是很大的讚賞。
UPDATE: 我現在有這樣的代碼幾乎工作:
index_values = edited_df.index.values
for i in index_values:
main_df.iloc[i]['pop'] =
edited_df.iloc[i]['new_col']
我得到一個警告錯誤,main_df沒有改變。它看起來像是在每次迭代中創建副本,而不是更新主數據框。
更新:固定 我終於設法解決了以下類似問題的解決辦法。
index_values = edited_df.index.values
for i in index_values:
main_df.iloc[i, main_df.columns.get_loc('pop')] =
edited_df.iloc[i]['new_col']