如何在 Pandas DataFrame 的指定位置插入一行?

DDD
發布: 2024-10-23 06:39:01
原創
580 人瀏覽過

How to Insert a Row into a Pandas DataFrame at a Specified Position?

在 Pandas DataFrame 中插入一行

在 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
登入後複製

現在,您想要將新行(例如[2, 3, 4])插入到現有DataFrame 的開頭(索引0)。

要在特定索引處插入行,您可以使用 loc 將行指派給所需的索引。例如,插入 [2, 3, 4] 作為第一行:

df.loc[-1] = [2, 3, 4]
登入後複製

但是,此操作會在現有 DataFrame 之前新增一行,導致索引為負。若要向上移動現有索引並使新插入的行成為第一行,您可以透過遞增索引來更新索引:

df.index = df.index + 1
登入後複製

最後,按索引對DataFrame 進行排序以獲得所需的順序:

df = df.sort_index()
登入後複製

因此,您將獲得更新的DataFrame,其中插入的行位於索引0 處:

   A  B  C
0  2  3  4
1  5  6  7
2  7  8  9
登入後複製

此方法允許您透過指派在DataFrame 內的任何位置插入新行值到特定索引。

以上是如何在 Pandas DataFrame 的指定位置插入一行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!