时间:2022-10-26 09:57:18 | 栏目:Python代码 | 点击:次
通常,您可能希望在 Pandas DataFrame 中插入一个新列。幸运的是,使用 pandas insert()函数很容易做到这一点,该函数使用以下语法:
insert(loc, column, value, allow_duplicates=False)
在哪里:
本教程展示了如何在实践中使用此功能的几个示例。
以下代码显示了如何插入一个新列作为现有 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
以下代码显示了如何插入一个新列作为现有 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
以下代码显示了如何插入一个新列作为现有 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() 函数的完整文档。
按条件先选择数据,然后对这部分数据赋值新列
实例:高低温差大于10度,则认为温差大
# 先创建空列(这是第一种创建新列的方法) df['wencha_type'] = '' df.loc[df["bWendu"]-df["yWendu"]>10, "wencha_type"] = "温差大" df.loc[df["bWendu"]-df["yWendu"]<=10, "wencha_type"] = "温差正常"