Kısa bir süre önce R'den python'a geçiş yaptım ve R's data.table kullanmanın tersine veri çerçevelerine yeniden alışmakta sorun yaşıyorum. Yapmakta olduğum problem, bir dizi dizgeyi almak, bir değer olup olmadığını kontrol etmek, sonra o dizgenin sayımını kullanıcı tarafından parçalanmaktır.pandalar kümelenmesi için koşullu toplamlar
A_id B C
1: a1 "up" 100
2: a2 "down" 102
3: a3 "up" 100
3: a3 "up" 250
4: a4 "left" 100
5: a5 "right" 102
Ve dönüş: Bu yüzden bu verileri almak istiyorum
A_id_grouped sum_up sum_down ... over_200_up
1: a1 1 0 ... 0
2: a2 0 1 0
3: a3 2 0 ... 1
4: a4 0 0 0
5: a5 0 0 ... 0
Ben R koduyla yaptım Önce Ancak
>DT[ ,list(A_id_grouped, sum_up = sum(B == "up"),
+ sum_down = sum(B == "down"),
+ ...,
+ over_200_up = sum(up == "up" & < 200), by=list(A)];
tüm (data.table kullanarak) Python ile yaptığım son denemeler beni başarısızlığa uğrattı:
Teşekkür peşin! Basit bir soru gibi görünüyor, ancak hiçbir yerde bulamadım.