向熊猫数据框插入一行

新手上路,请多包涵

我有一个数据框:

 s1 = pd.Series([5, 6, 7])
s2 = pd.Series([7, 8, 9])

df = pd.DataFrame([list(s1), list(s2)],  columns =  ["A", "B", "C"])

   A  B  C
0  5  6  7
1  7  8  9

[2 rows x 3 columns]

我需要添加第一行 [2, 3, 4] 来获得:

    A  B  C
0  2  3  4
1  5  6  7
2  7  8  9

我试过 append()concat() 功能,但找不到正确的方法。

如何向数据框添加/插入系列?

原文由 Meloun 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 633
1 个回答

只需将行分配给特定索引,使用 loc

  df.loc[-1] = [2, 3, 4]  # adding a row
 df.index = df.index + 1  # shifting index
 df = df.sort_index()  # sorting by index

你会得到,如你所愿:

     A  B  C
 0  2  3  4
 1  5  6  7
 2  7  8  9

请参阅 Pandas 文档 Indexing: Setting with enlargement

原文由 Piotr Migdal 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题