[python]pandas學習

weixin_34214500發表於2019-02-26

參考資料:

pandas用法大全

2019-02-26

目標:

將1000G部分過濾,大於0.01部分全部刪除,但是有些沒有收錄的snp會標註為‘.’

遇到的問題:

直接使用下面的命令,則無法過濾,原因出在:該列所有的值格式為str

df.ix[df['1000G_ALL'] < 0.01]

解決的程式碼:

寫個轉化的函式,然後用apply命令

df['1000G_ALL'] = df['1000G_ALL'].apply(lambda x:kitty(x))
df.ix[df['1000G_ALL']<0.01]

可以檢視一下df['1000G_ALL'].apply的幫助文件,該命令可以傳入引數,解決了之前map的缺陷,eg:

series.apply(subtract_custom_value, args=(5,))
series.apply(add_custom_values, june=30, july=20, august=25)

參考資料:pandas資料型別轉換

目標:

篩選有害位點

解決程式碼

#濾去不帶red字元的列,縮小範圍
df.filter(like='red')
#或指定列過濾
df.filter(items=['SIFT_pred','Polyphen2_HDIV_pred','Polyphen2_HVAR_pred','MutationTaster_pred','CADD_phred'])

目標:

統計某列中'D'的個數,'F'的個數

相關文章