문제 : 기본적으로 data.table 구문을 기반으로 데이터를 그룹화하고 병렬로 쉼표로 구분 된 값을 포함하는 두 개 이상의 열을 만듭니다 (아래 예제 참조).
접근 방식 :lapply
쉼표로 구분하려는 열 목록을 제공 할 수 있는 위치 에 대해 생각했습니다 . 그러나 이것은 예상대로 나타나지 않았습니다.
어떤 제안?
편집 나는 목록 / 벡터 열을 제공 한 다음이 목록에 기능을 적용 해야하는 접근 방식을 찾고 있습니다 (작동하지 않는 lapply
접근 방식 과 유사 )
library(data.table)
dt <- data.table(
x = c(1, 1, 1, 3, 3, 2),
y = c("AA", "BB", "CC", "BB", "EE", "AA"),
z = c("H", "A", "C", "Z", "F", "G")
)
## Attempts
dt[, paste0(y, collapse = ","), by = .(x)]
dt[, lapply(c("y", "z"), paste0, collapse = ","), by = x]
## Desired Ouput
x y z
1: 1 AA,BB,CC H, A, C
2: 3 BB,EE Z, F
3: 2 AA G
library(data.table)
dt[, lapply(.SD, toString), by = x, .SDcols = names(dt)[sapply(dt, is.character)]]
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다