DataFrame.insert(self, loc, column, value, allow_duplicates=False) [source]
将列插入到DataFrame
中的指定位置。
引发一个ValueErro
r如果列已经包含在DataFrame
,除非allow_duplicates
设置为True
。
参数: | loc : 插入索引,必须验证 column : 字符串,数字或hashable对象 插入列的标签 value : int,Series或类似数组的值 allow_duplicates : 布尔值,可选 |
例子
可以在任何位置添加一个列,而不仅仅是在结尾处。它还提供了用于插入列值的不同选项。
import pandas as pd
# 定义一个包含学生数据的字典
data = {'Name': ['Jai', 'Princi', 'Gaurav', 'Anuj'],
'Height': [5.1, 6.2, 5.1, 5.2],
'Qualification': ['Msc', 'MA', 'Msc', 'Msc']}
# 将字典转换为DataFrame
df = pd.DataFrame(data)
# 使用datafame .insert()添加一个列
df.insert(2, "Age", [21, 23, 24, 21], True)
插入具有静态值的列:
import pandas as pd
# 读取csv文件
data = pd.read_csv("pokemon.csv")
# displying dataframe - Output 1
data.head()
# 在DataFrame中插入具有静态值的列
data.insert(2, "Team", "Any")
# displaying data frame again - Output 2
data.head()
每行传递不同的series:
import pandas as pd
#创建一个空白的 series
Type_new = pd.Series([])
# 读取csv文件
data = pd.read_csv("pokemon.csv")
# 运行一个for循环并将一些值赋给series
for i in range(len(data)):
if data["Type"][i] == "Grass":
Type_new[i]="Green"
elif data["Type"][i] == "Fire":
Type_new[i]="Orange"
elif data["Type"][i] == "Water":
Type_new[i]="Blue"
else:
Type_new[i]= data["Type"][i]
# 插入具有上述列表值的新列
data.insert(2, "Type New", Type_new)