添加數據
1、給數據框最後添加一列
例如給如下數組添加一列:
數組名爲df1,給df1加score一列:
df1['score']=[80,98,67,90]
可以直接命名列名,賦值數據即可。
注意:增加列的元素個數要跟原數據列的個數一樣
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'])
結果:
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
'''
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的位置插入數據 ‘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
'''
給df1最後添加一行:
df1=df1.append(new,ignore_index=True)
ignore_index=True,表示不按原來的索引,從0開始自動遞增