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']} # 将字典转换为DataFramedf = 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循环并将一些值赋给seriesfor 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)