例如给如下数组添加一列:
在这里插入长图片描述
数组名为df1,给df1加score一列:
df1['score']=[80,98,67,90]
1
可以直接命名列名,赋值数据即可。
注意:增加列的元素个数要跟原数据列的个数一样
2、在具体某个位置插入一列可以用 insert 的方法
df1.insert(iloc,column,value)
iloc:要插入的位置
colunm:列名
value:值
例如:在列索引为2的位置,插入birth一列
df1.insert(2,'birth',['1995-07-01','1998-09-04','1993-11-03','1994-04-17'])
1
结果:
在这里插入图片描述
3、单独拿出来列名进行添加列操作(reindex重新构建索引)
思路:①将列索引拿出来②插入新的列③重新构建索引④给新列赋值
col_name=df1.columns.tolist() # 将数据框的列名全部提取出来存放在列表里
print(col_name) #输出:['name', 'gender', 'birth', 'age', 'score']
col_name.insert(2,'city') # 在列索引为2的位置插入一列,列名为:city,刚插入时不会有值,整列都是NaN
print(col_name) #输出:['name', 'gender', 'city', 'birth', 'age', 'score']
df1=df1.reindex(columns=col_name) # DataFrame.reindex() 对原索引重新构建索引值
print(df1)
'''
name gender city birth age score
0 Show M NaN 1995-07-01 22 80
1 Tyrion M NaN 1998-09-04 32 98
2 Sansa F NaN 1993-11-03 18 67
3 Arya F NaN 1994-04-17 14 90
'''
df1['city']=['北京','山西','湖北','澳门'] # 给city列赋值
print(df1)
'''
输出
name gender city birth age score
0 Show M 北京 1995-07-01 22 80
1 Tyrion M 山西 1998-09-04 32 98
2 Sansa F 湖北 1993-11-03 18 67
3 Arya F 澳门 1994-04-17 14 90
'''
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
4、插入一行(会被覆盖,可以进行分割合并的方式)
df1=pd.DataFrame([['Show','M',22],['Tyrion','M',32],['Sansa','F',18],['Arya','F',14]],columns=['name','gender','age'])
row=['111','222','333']
df1.iloc[1]=row
print(df1)
1
2
3
4
在行索引为1的位置插入数据 ‘111’,‘222’,‘333’
结果:
在这里插入图片描述
5、先创建一个DataFrame,用来增加数据框的最后一行
new=pd.DataFrame({'name':'lisa',
'gender':'F',
'age':19
},index=[0]
)
print(new)
'''输出为:
name gender age
0 lisa F 19
'''
1
2
3
4
5
6
7
8
9
10
给df1最后添加一行:
df1=df1.append(new,ignore_index=True)
1
ignore_index=True,表示不按原来的索引,从0开始自动递增
————————————————
版权声明:本文为CSDN博主「糖潮丽子」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_39783601/article/details/104436303