簡體   English   中英

Python Panda:統計一個數出現的次數

[英]Python Panda : Count number of occurence of a number

我已經搜索了很長時間,需要您的幫助,我是 python 和 panda lib 的新手。 我有一個 dataframe 就像從 csv 文件中收取的那樣:

ball_1,ball_2,ball_3,ball_4,ball_5,ball_6,ball_7,extraball_1,extraball_2
10,32,25,5,8,19,21,3,4
43,12,8,19,4,37,12,1,5
12,16,43,19,4,28,40,2,4

ball_X 是 1-50 之間的 int,extraball_X 是 1-9 之間的 int。 我想計算每個數字在其他 2 個這樣的幀中出現了多少次:第一個 DF 球:

Number,Score
1,128
2,34
3,12
4,200
....
50,145

第二個DF外球:

Number,Score
1,340
2,430
3,123
4,540
....
9,120

我腦子里有算法,但我對熊貓太菜鳥了,無法翻譯成代碼。 我希望它足夠清楚,有人能夠幫助我。 如果您有任何問題,請不要猶豫。

對具有groupbycolumns進行value_counts

def get_before_underscore(x):
    return x.split('_', 1)[0]

val_counts = {
    k: d.stack().value_counts()
    for k, d in df.groupby(get_before_underscore, axis=1)
}

print(val_counts['ball'])

12    3
19    3
4     2
8     2
43    2
32    1
5     1
10    1
37    1
40    1
16    1
21    1
25    1
28    1
dtype: int64

print(val_counts['extraball'])

4    2
1    1
2    1
3    1
5    1
dtype: int64

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM