在 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中文网其他相关文章!