如何在 Pandas DataFrame 中插入一列

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

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

在哪里:

  • loc: 插入列的索引。第一列是 0。
  • column: 赋予新列的名称。
  • value 新列的值数组。
  • allow_duplicates: 是否允许新列名匹配现有列名。默认值为假。
  • 本教程展示了如何在实践中使用此功能的几个示例。

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

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

    import pandas as pd
    
    #create DataFrame
    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	A	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
    
    #create DataFrame
    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
    
    #create DataFrame
    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() 函数的完整文档。

     

    来源:allway2

    物联沃分享整理
    物联沃-IOTWORD物联网 » 如何在 Pandas DataFrame 中插入一列

    发表评论