在 pandas DataFrame 顶部添加一行

pythonserver side programmingprogramming

在 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']})
# 与旧 DataFrame 连接并重置索引。
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)
# 在索引位置 0 添加新行,其中包含列表中提供的值
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

相关文章