在pandas DataFrame中添加一行

在pandas DataFrame中添加一行

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

更多Pandas文章,请阅读:Pandas教程

示例

让我们首先创建一个新的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连接,同时重置索引值。由于索引重置,新行会添加到顶部。

示例

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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程