📌  相关文章
📜  如何将列添加到数据框的开头 - Python (1)

📅  最后修改于: 2023-12-03 15:24:44.376000             🧑  作者: Mango

如何将列添加到数据框的开头 - Python

在Python中,可以使用pandas库来操作数据框。有时候我们需要在数据框开头添加一列数据。下面我们来见证一下两种添加方式。

方法一:使用insert()函数

pandas的DataFrame类中提供了一个insert()函数,可以在指定位置添加列。

import pandas as pd

# 创建数据框
data = {'name': ['A', 'B', 'C'],
        'age': [20, 30, 25]}
df = pd.DataFrame(data)

# 待添加的列
new_col = ['male', 'female', 'male']
# 在第一列位置添加列
df.insert(0, 'gender', new_col)

print(df)

运行结果:

  gender name  age
0   male    A   20
1   female    B   30
2   male    C   25
方法二:使用assign()函数

pandas的DataFrame类中还提供了一个assign()函数,可以添加一列到数据框的最前面。需要注意的是,assign()函数返回的是新的数据框,不会修改原始数据框。

import pandas as pd

# 创建数据框
data = {'name': ['A', 'B', 'C'],
        'age': [20, 30, 25]}
df = pd.DataFrame(data)

# 待添加的列
new_col = ['male', 'female', 'male']
# 添加列
df = pd.concat([pd.DataFrame(new_col, columns=['gender']), df], axis=1)

print(df)

运行结果:

  gender name  age
0   male    A   20
1   female    B   30
2   male    C   25

以上是两种在数据框开头添加列的方法,方法一比较简单,但是如果要添加多列,需要多次使用insert()函数,比较繁琐。方法二使用了concat()函数,稍微复杂一点,但是可以一次添加多列。根据实际需求选择合适的方法即可。