這在技術上應該是一件簡單的事情,但不幸的是,它現在還是讓我不知所措。基於另一個熊貓聚合一列
我想根據另一列找到另一列的比例。例如:
Column 1 | target_variable
'potato' 1
'potato' 0
'tomato' 1
'brocolli' 1
'tomato' 0
預期輸出是:
column 1 | target = 1 | target = 0 | total_count
'potato' | 1 | 1 | 2
'tomato' | 1 | 1 | 2
'brocolli' | 1 | 0 | 1
不過,我想我使用聚合錯,所以我採取了以下幼稚的做法:
z = {}
for i in train.index:
fruit = train["fruit"][i]
l = train["target"][i]
if fruit not in z:
if l == 1:
z[fruit] = {1:1,0:0,'count':1}
else:
z[fruit] = {1:0,0:1,'count':1}
else:
if l == 1:
z[fruit][1] += 1
else:
z[fruit][0] += 1
z[fruit]['count'] += 1
其中給出代之以字典形式的類似輸出。
任何人都可以啓發我正確的語法爲熊貓的方式? :)
謝謝! :)
輸出是否正確? – jezrael
@jezrael哎呀抱歉,修正! :)謝謝你指出了! – Wboy
如果添加另一行''土豆',1',輸出會改變? – jezrael