Cách tốt nhất để gán cho nhiều cột bằng cách sử dụng là data.table
gì? Ví dụ:
f <- function(x) {c("hi", "hello")}
x <- data.table(id = 1:10)
Tôi muốn làm một cái gì đó như thế này (tất nhiên cú pháp này không chính xác):
x[ , (col1, col2) := f(), by = "id"]
Và để mở rộng điều đó, tôi có thể có nhiều cột với tên được lưu trữ trong một biến (giả sử col_names
) và tôi muốn làm:
x[ , col_names := another_f(), by = "id", with = FALSE]
Cách chính xác để làm một cái gì đó như thế này là gì?
1
Điều này có vẻ như đã được trả lời: stackoverflow.com/questions/11308754/ Kẻ
—
Alex
Alex, câu trả lời đó rất gần nhưng dường như nó không hoạt động kết hợp với
—
Matt Dowle
by
vì @Christoph_J là chính xác để nói. Liên kết đến câu hỏi của bạn được thêm vào FR # 2120 "Thả cần với = FALSE cho LHS của: =", vì vậy nó sẽ không bị quên để xem lại.
Để rõ ràng,
—
smci
f()
là một hàm trả về nhiều giá trị, một giá trị cho mỗi cột của bạn.