pandas 使用insert插入一列

  • Post category:Python

下面我来详细讲解“pandas使用insert插入一列”的完整攻略。

1. 插入一列基本用法

pandas使用insert函数插入一列的基本语法如下:

DataFrame.insert(loc, column, value, allow_duplicates=False)

其中参数含义如下:

  • loc: 插入列的位置,是列名或列号(从0开始计数)。
  • column: 插入列的列名。
  • value: 插入列的值。
  • allow_duplicates: 插入的列是否允许重复,默认为False。

下面给一个示例说明:

import pandas as pd

# 创建DataFrame对象
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 插入一列数据
df.insert(1, 'D', [10, 20, 30])

# 打印结果
print(df)

输出结果如下:

   A   D  B  C
0  1  10  4  7
1  2  20  5  8
2  3  30  6  9

可以看到,使用insert函数在DataFrame对象的第1列插入了一列数据,列名为’D’,数据为[10, 20, 30]。

2. 插入多列示例

当需要插入多列时,可以通过循环调用insert函数插入多列。下面给一个示例说明:

import pandas as pd

# 创建DataFrame对象
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 插入多列数据
for i, col_name in enumerate(['D', 'E', 'F']):
    df.insert(i+1, col_name, [10*(i+1), 20*(i+1), 30*(i+1)])

# 打印结果
print(df)

输出结果如下:

   A   D   E   F  B  C
0  1  10  20  30  4  7
1  2  20  40  60  5  8
2  3  30  60  90  6  9

可以看到,使用循环调用insert函数,依次在DataFrame对象的第1、2、3列插入了三列数据,列名为’D’、’E’、’F’,数据为[10, 20, 30]、[20, 40, 60]、[30, 60, 90]。

希望这个攻略能够帮到你,如果还有不懂的地方可以再问我哦~