Tôi vừa mới thực hiện chuyển đổi từ R sang python và đã gặp phải một số sự cố khi sử dụng lại khung dữ liệu thay vì sử dụng data.table của R. Vấn đề tôi gặp phải là tôi muốn lấy danh sách các chuỗi, kiểm tra một giá trị, sau đó tính tổng số chuỗi đó được chia nhỏ bởi người dùng. Vì vậy, tôi muốn lấy dữ liệu này:khoản tiền điều kiện cho tổng hợp gấu trúc
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
Và trở lại:
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
Trước khi tôi đã làm nó với mã R (sử dụng data.table)
>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)];
Tuy nhiên tất cả các những nỗ lực gần đây của tôi với Python đã không thành công với tôi:
DT.agg({"D": [np.sum(DT[DT["B"]=="up"]),np.sum(DT[DT["B"]=="up"])], ...
"C": np.sum(DT[(DT["B"]=="up") & (DT["C"]>200)])
})
Cảm ơn bạn trước! nó có vẻ như một câu hỏi đơn giản tuy nhiên tôi không thể tìm thấy nó ở bất cứ đâu.