Có cách dễ dàng để thêm số lượng cho mỗi danh mục trong hai bảng lớn trong R không?Cách dễ dàng để "thêm" hai bảng lớn vào R?
... nơi các bảng làm không phải tất cả có chính xác cùng các giá trị hiện tại (mặc dù họ sẽ khá nhiều điểm trùng):
ví dụ nhỏ về những gì tôi đang cố gắng làm. Thiết lập một số dữ liệu:
x1 <- c(5, 3, 3, 6, 3, 3, 5, 5, 11, 2, 4, 9, 3, 5, 8, 2, 8, 5, 4, 8)
x2 <- c(6, 10, 9, 17, 6, 7, 8, 11, 5, 12, 14, 5, 11, 7, 7)
table(x1)
x1
2 3 4 5 6 8 9 11
2 5 2 5 1 3 1 1
table(x2)
x2
5 6 7 8 9 10 11 12 14 17
2 2 3 1 1 1 2 1 1 1
Bây giờ tôi muốn kết hợp các bảng như thể tôi đã làm table(c(x1,x2))
, nhận được:
2 3 4 5 6 7 8 9 10 11 12 14 17
2 5 2 7 3 3 4 2 1 3 1 1 1
Nhưng bây giờ tưởng tượng x1 và x2 không còn nữa (và thực sự lớn vì vậy tôi thực sự không muốn tạo lại chúng từ các bảng và thực sự làm table(c(x1,x2))
), tất cả những gì tôi muốn là lấy các bảng t1
và t2
và thêm số lượng (thường rất lớn) ... mà tôi có thể thực hiện có thật không những cách vụng về.
Tuy nhiên, điều này có vẻ như nó phải được cả hai rất phổ biến và rất dễ dàng-giải quyết vấn đề (thực sự, tôi nghĩ rằng t1 + t2
nên làm việc cho các bảng với các hạng mục cùng loại) nhưng tìm kiếm các câu hỏi về tất cả các thuật ngữ tìm kiếm Tôi có thể nghĩ rằng không tìm thấy gì.
Tôi đã bỏ lỡ một cách thực sự đơn giản và rõ ràng để làm điều này?
Edit:
Để làm rõ, một cái gì đó như thế này (mà tôi đã làm) không phải là 'đơn giản và rõ ràng' cho những gì phải là một hoạt động rất phổ biến với các bảng:
m <- merge(t1,t2,by.x="x1",by.y="x2",all=TRUE)
m[is.na(m)] <- 0
oo <- order(m$x1)
t12 <- m[oo,2]+m[oo,3]
names(t12) <- m[oo,1]
Đặc biệt này thực sự là không đơn giản và dễ làm theo hơn là phương pháp tiếp cận vũ lực.
Bạn nên có một cái nhìn tại ' hợp nhất'. –
@PaulHiemstra Tôi đã làm, trước khi đăng. Tôi cũng chơi với nó trong một thời gian dài. Tôi đã không thấy một cách tốt để làm những gì tôi muốn (dễ dàng hơn là làm nó bằng vũ lực). Có thể tôi đã bỏ lỡ thứ gì đó ở đó, nhưng trong trường hợp đó ... tôi cần nhiều gợi ý hơn thế. –
Cuộc sống của bạn sẽ dễ dàng hơn nhiều nếu bạn sử dụng khung dữ liệu thay vì bảng. Các bảng chỉ được đặt tên là các vectơ, và nói chung, có một vài hàm R để căn chỉnh và kết hợp các vectơ có tên, và nhiều cho các khung dữ liệu. – hadley