Tôi muốn tính các phần tử mới không có trong những năm trước. Trong ví dụ nàyđếm các phần tử mới trong danh sách vector
dữ liệu mẫu:
var1 <- list('2003' = 1:3, '2004' = c(4:3), '2005' = c(6,4,1), '2006' = 1:4)
Tôi muốn nhận được đầu ra
newcount <- list('2003' = 0, '2004' = 1, '2005' = 1, '2006' = 0)
đang không thành công:
newcount <- mapply(setdiff, var1, seq_along(var1), function(i)
{if (i > 1) {Reduce(union, var1[i-1], accumulate=T)}}, length)
Vui lòng nghiên cứu thuật ngữ. Bạn có một danh sách các vectơ, không phải khung dữ liệu. – Andrie
Cảm ơn @Andrie, đã sửa. – dmvianna
'diff (sapply (Reduce (union, var1, accumulate = TRUE), length))' # [1] 1 1 0 –