私はPythonで作業しており、パンダのデータフレームに大きなデータセットを持っています。私はこのデータの一部を取り出し、それを別のデータフレームに入れました。そこでは、新しい列を作成してデータを取り込みました。ここでは、この新しい列を元のデータフレームに戻して、既存の列の1つを上書きしますが、編集したセクションのみにします。あるデータフレームから別のデータフレームへのデータの挿入Index
これが最も効果的な方法を教えてください。唯一の一意の識別子は、自動的に生成されるインデックスです。 2番目のデータフレームは大きなインデックスと同じインデックス値を保持しているので、まっすぐ進むはずですが、どうすればよいかわかりません 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']