Pandas には DataFrame があり、特定のインデックスまたは位置に行を挿入したいとします。一般的な方法は、loc (ラベルベースのインデックス作成の場合) または iloc (整数ベースのインデックス作成の場合) を使用することです。
例でこれを理解しましょう:
次の DataFrame df を考えてみましょう:
s1 = pd.Series([5, 6, 7]) s2 = pd.Series([7, 8, 9]) df = pd.DataFrame([list(s1), list(s2)], columns = ["A", "B", "C"]) print(df)
出力:
A B C 0 5 6 7 1 7 8 9
ここで、既存の DataFrame の先頭 (インデックス 0) に新しい行 (例: [2, 3, 4]) を挿入します。
特定のインデックスに行を挿入するには、loc を使用して行を目的のインデックスに割り当てます。たとえば、最初の行として [2, 3, 4] を挿入するには:
df.loc[-1] = [2, 3, 4]
ただし、このアクションでは既存の DataFrame の前に行が追加されるため、負のインデックスが作成されます。既存のインデックスを上にシフトして、新しく挿入された行を最初の行にするには、インデックスをインクリメントして更新します:
df.index = df.index + 1
最後に、DataFrame をインデックスで並べ替えて、目的の順序を取得します:
df = df.sort_index()
その結果、インデックス 0 に行が挿入された更新された DataFrame を取得します。
A B C 0 2 3 4 1 5 6 7 2 7 8 9
このアプローチでは、代入することで DataFrame 内の任意の位置に新しい行を挿入できます。値を特定のインデックスに変換します。
以上がPandas DataFrame の指定された位置に行を挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。