在 Pandas DataFrame 中添加顶部行


在 Pandas 中,DataFrame 是一种二维数据结构,即数据以表格形式排列在行和列中。我们可以使用列表、字典、序列和另一个 DataFrame 来创建 DataFrame。但是,当我们想要向已创建的 DataFrame 添加新行时,可以通过内置方法(如 append)来实现,该方法会将其添加到 DataFrame 的末尾。在本文中,我们将找到一些方法,使用一些涉及 DataFrame 中元素索引的技巧,将新行 DataFrame 添加到 DataFrame 的顶部。

示例

让我们首先在 Pandas 中创建一个新的 DataFrame,如下所示。

import pandas as pd
data = {'Name':['Tom', 'Jack', 'Mary', 'Ricky'],'Age':[28,34,29,42],'Gender':['M','M','F','F']}
df = pd.DataFrame(data)
print df

输出

运行以上代码,得到以下结果:

Age       Gender      Name
0         28          MTom
1         34          MJack
2         29          FMary
3         42          F Ricky

**方法 1** - 我们遵循的第一种方法是在 DataFrame 的顶部添加新行,即将新传入的行转换为 DataFrame,并将其与现有 DataFrame 连接,同时重置索引值。由于索引重置,新行将添加到顶部。

示例

import pandas as pd
data = {'Name':['Tom', 'Jack', 'Mary', 'Ricky'],'Age':[28,34,29,42],'Gender':['M','M','F','F']}
df = pd.DataFrame(data)
top_row = pd.DataFrame({'Name':['Lavina'],'Age':[2],'Gender':['F']})
# Concat with old DataFrame and reset the Index.
df = pd.concat([top_row, df]).reset_index(drop = True)
print df

输出

运行以上代码,得到以下结果:

         Age       Gender      Name
0         2          F         Lavina
1         28         M         Tom
2         34         M         Jack
3         29         F         Mary
4         42         F         Ricky

**方法 2** - 在这种方法中,我们使用 **Dataframe.iloc[]** 方法,该方法允许我们在索引位置 0 添加新行。在以下示例中,我们通过将 .loc 方法的索引值指定为 0(第一行的索引值)来添加一个新行作为列表。

示例

import pandas as pd
data = {'Name':['Tom', 'Jack', 'Mary', 'Ricky'],'Age':[28,34,29,42],'Gender':['M','M','F','F']}
df = pd.DataFrame(data)
# Add a new row at index position 0 with values provided in list
df.iloc[0] = ['7', 'F','Piyu']
print df

输出

运行以上代码,得到以下结果:

      Age    Gender   Name
0      7      F       Piyu
1      34     M       Jack
2      29     F       Mary
3      42     F       Ricky

更新于: 2019年8月7日

2K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.