在這個小數據幀:如何計算熊貓數據框中單元的項目數量(或長度)?
d1 = pd.read_csv('to_count.mcve.txt', sep='\t')
M1 M2 F1
A,B,A,C,D A,C,B,C,B A
A,B,B,C,B A,B,A B
C,B,C,D,E B,C E
步驟01:
我想數有多少F1值都在M1和M2
我可以做:
d1_count = d1.apply(lambda x: x.loc[::].str.count(x.F1), 1)
輸出:
M1 M2 F1
2 1 1
3 1 1
1 0 1
步驟02:但我想除以2的計數,如果原始細胞的長度是3個以上(不含逗號)。
說明:
所有M1中的值具有長度超過3個,第一個M2具有長度大於3這麼多,統計了這些需求(除以2)來改變。
M1中的第一個值是
A,B,A,C,D
- 的F1值是
A
和有2個「A」在M1其中使用.str.count(x.F1)
- 由於
A,B,A,C,D
長度大於3我現在計數更改計數(除以2),結果爲1. - 我想爲所有列自動執行此操作,因爲會有很多列。
最終預期輸出是:
M1 M2
1 0.5
1.5 1
0.5 0
任何建議。
什麼是「細胞」,它的「長度」是什麼? –
您可以使用總和... –
熊貓數據框中的每個單元格都是「列和行」的交集。第一個單元格是數據「A,B,A,C,D」 – everestial007