pandas主要為資料預處理
DataFrame
import pandas
food_info = pandas.read_csv("路徑") #絕對路徑和相對路徑都可以 type(food_info)為DataFrame
food_info.dtype_ #檔案中資料的型別
food_info.head() 讀出的資料顯示前五條 food_info.head(3) 讀出的資料顯示前3行 food_info.tail(4)顯示末尾4行
food_info.columns 顯示列名 food_info.shape 行和列資料規模
food_info.loc[0] 取出第一行資料 food_info[3:6] 3~6行資料
food_info["列名"] 取出列 food_info["列名1","列名2"]
food_info.colums.tolist() #把列名轉化為一個list .endswith("(9)") 找出以(g)結尾的列名
food_info["Iron_(mg)"] 以(mg)結尾的 food_info["新列名"] #新加了一列 .max() #求某列的最大值
food_info.sort_valus("列名",inplace = True,ascending = Flase)
#按列名對某一列進行排序,inplace表示新生成一列還是原來的上改 ,ascending = Flase表示從大到小排,NaN 不管升序降序都放到最後
a = pandas.isnull(food_info["列名"]) #看看對應列那些值缺失 food_info[a] 這樣就會把有缺失值的一行列印
len(a) #a的數量 food_info["列名"][條件] .mean() 求均值
.pivot_table(index = "列名",values="",aggfunc = np.mean)#index 表示以index為基準,valus表示 值為values的平均數
.pivot_table(index = "列名",values=”列名“) #以index為基準 values列的平均數如果aggfunc未指定就為求均值
.dropna(axis =1)#按行將缺失值對應行去掉 .fillna() 對缺失值填充
fillna引數的取值 : {‘pad’, ‘ffill’,‘backfill’, ‘bfill’, None}, default None
pad/ffill:用前一個非缺失值去填充該缺失值
backfill/bfill:用下一個非缺失值填充該缺失值
None:指定一個值去替換缺失值(預設預設這種方式)
.reset_index(drop = True) #重新設定了一下index 原來的index 不要了 形成一個新的
def ~自定義一個函式 用.apply(函式名) 去用這個函式