1. 程式人生 > 實用技巧 >pandas中表的合併與空值的使用

pandas中表的合併與空值的使用

1.空值的處理
1.NAN可以常與運算
2.none不可以常與運算,所以在pandas中遇見None它轉換成NAN形式
3.將空對應的行資料刪除
方式一:
1.df.notnull.all(axis=1) df.isnull.any(axis = 1) all()表示全部都是ture,如果有一個不是就是false,any()表示相反
2.將這一組值作為行索引df.loc[df.notnull.all(axis=1)] df.loc[~df.isnull.any(axis = 1)]
方式二:
df.dropna(axis=0) 注意:以drop開頭的行和列是相反的
4.填充一個固定的資料 df.fillna(value = '要填充的值')
5.使用相鄰的值進行填充 df.fillna(method = 'ffill'('bfill'),aixs = 0 )

2.級聯操作: df.concat((df1,df2),axis=0)
不匹配級聯 df.concat((df1,df2),axis=0, join='inner') 當join是inner時,有相同索引的才會級聯,其他的刪除,如果為outer不同的索引會為NAN
3.合併:pd.merge(df1,df2,how='用什麼方式合併',on='合併條件(列名)',left_on='xxx',right_on ='xxx')
# 如果使用合併條件,就會將倆個表的公告的列作為合併條件
# how中inner表示只合並可以合併的資料,outer表示不能合併的資料補空,right表示只儲存右表不能合併的資料,並且補空,左表不能合併的資料不要,left相反
#left_on和right_on,當倆個表沒有相同的列索引作為合併條件的話,就可以使用倆個表某個列裡面的相同值作為合併