如何将列插入 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() 函数的完整文档。