📜  向数据框 pandas 添加新行 - Python (1)

📅  最后修改于: 2023-12-03 14:50:41.524000             🧑  作者: Mango

向数据框 pandas 添加新行 - Python

在进行数据分析和处理的过程中,经常需要添加新的数据行到已有的 Pandas 数据框中。本文将介绍如何使用 Pandas 添加新的数据行。

创建数据框

在介绍如何添加新行之前,我们先创建一个示例数据框:

import pandas as pd

data = {'name': ['Jack', 'Alice', 'Bob', 'Charlie'],
        'age': [20, 25, 30, 35],
        'gender': ['M', 'F', 'M', 'M']}
df = pd.DataFrame(data)
df

输出结果为:

      name  age gender
0     Jack   20      M
1    Alice   25      F
2      Bob   30      M
3  Charlie   35      M
添加新行
使用 append 方法

Pandas 提供了 append 方法用于向数据框中添加新的行。下面是一个使用 append 方法添加新行的示例:

new_row = {'name': 'David', 'age': 40, 'gender': 'M'}
df = df.append(new_row, ignore_index=True)
df

输出结果为:

      name  age gender
0     Jack   20      M
1    Alice   25      F
2      Bob   30      M
3  Charlie   35      M
4    David   40      M

在上面的示例中,append 方法接受一个字典类型的新行数据,并指定 ignore_index=True,表示重新生成行索引。如果没有指定此参数,新行的索引将与原始数据框最后一行的索引相同。

通过另一个数据框合并

另一种添加新行的方法是,先创建一个新的数据框,再通过 concat 方法将两个数据框合并起来。下面是一个示例:

new_row = {'name': 'David', 'age': 40, 'gender': 'M'}
new_df = pd.DataFrame(new_row, index=[0])
df = pd.concat([df, new_df], ignore_index=True)
df

输出结果为:

      name  age gender
0     Jack   20      M
1    Alice   25      F
2      Bob   30      M
3  Charlie   35      M
4    David   40      M

在上面的示例中,先创建了一个新的数据框 new_df,然后通过 concat 方法将原始数据框 df 和新的数据框合并起来。同样,我们需要设置 ignore_index=True 重新生成行索引。

总结

本文介绍了两种向 Pandas 数据框中添加新行的方法:使用 append 方法和通过另一个数据框合并。不管使用哪种方法,务必注意新行数据的格式以及设置合适的行索引。