如何将列插入 pandas dataframe


通常,您可能希望将新列插入到 pandas DataFrame 中。幸运的是,使用 pandas insert()函数可以轻松做到这一点,该函数使用以下语法:

插入(loc,列,值,allow_duplicates = False)

金子:

  • loc:要在其中插入列的索引。第一列是 0。
  • 列:为新列指定的名称。
  • value:新列的值数组。
  • allowed_duplicates:是否允许新列名与现有列名匹配。默认值为 False。

本教程展示了此功能实际使用的几个示例。

示例 1:插入新列作为第一列

以下代码显示如何插入新列作为现有 DataFrame 的第一列:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#view DataFrame
df
        points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6

#insert new column 'player' as first column
player_vals = ['A', 'B', 'C', 'D', 'E']
df. insert (loc= 0 , column='player', value=player_vals)
df

        player points assists rebounds
0 to 25 5 11
1 B 12 7 8
2 C 15 7 10
3 D 14 9 6
4 E 19 12 6

示例 2:插入新列作为中间列

以下代码显示如何插入新列作为现有 DataFrame 的第三列:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as third column
player_vals = ['A', 'B', 'C', 'D', 'E']
df. insert (loc= 2 , column='player', value=player_vals)
df

        points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6

示例 3:插入新列作为最后一列

以下代码显示如何插入新列作为现有 DataFrame 的最后一列:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as last column
player_vals = ['A', 'B', 'C', 'D', 'E']
df. insert (loc= len (df.columns) , column='player', value=player_vals)
df

        points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6

请注意,使用len(df.columns)允许您插入新列作为任何数据帧的最后一列,无论它可能包含多少列。

您可以在此处找到 insert() 函数的完整文档。

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注