Tôi có một khung dữ liệu với hai cột. Tôi muốn thêm hai cột bổ sung vào tập dữ liệu với số lượng dựa trên tổng hợp.Tổng hợp trong R
df <- structure(list(ID = c(1045937900, 1045937900),
SMS.Type = c("DF1", "WCB14"),
SMS.Date = c("12/02/2015 19:51", "13/02/2015 08:38"),
Reply.Date = c("", "13/02/2015 09:52")
), row.names = 4286:4287, class = "data.frame")
Tôi chỉ muốn đếm số lượng Instances of SMS.Type và Reply.Date khi không có giá trị rỗng. Vì vậy, trong ví dụ đồ chơi dưới đây, tôi sẽ tạo ra 2 cho SMS.Type và 1 cho Reply.Date
Tôi sau đó muốn thêm điều này vào khung dữ liệu dưới dạng tổng số (Im biết rằng chúng sẽ trùng lặp cho số lượng hàng trong các tập dữ liệu ban đầu nhưng thats ok)
tôi đã được chơi đùa với tổng và đếm chức năng nhưng không có kết quả
mytempdf <-aggregate(cbind(testtrain$SMS.Type,testtrain$Response.option)~testtrain$ID,
train,
function(x) length(unique(which(!is.na(x)))))
mytempdf <- aggregate(testtrain$Reply.Date~testtrain$ID,
testtrain,
function(x) length(which(!is.na(x))))
bất cứ ai có thể giúp đỡ?
Cảm ơn bạn đã dành thời gian
Hi David, Cảm ơn bạn giới thiệu tôi đến data.table ... Bạn có thể giải thích những gì mỗi dòng được làm từ SetDT trở đi nếu bạn có thời gian. Để trả lời câu hỏi của bạn, tôi đã sử dụng độ dài (unique()) để thử và đếm các giá trị duy nhất trong các cột –
Tôi đã thêm giải thích. –
Cảm ơn bạn rất nhiều vì câu trả lời của bạn –