변수를 사용하여 열 이름을 지정하는 data.table
개체에서 열 값을 추출하고 싶습니다. 예를 들어 :data.table에서 참조로 열을 벡터로 추출합니다.
DT <- data.table(x = c(1, 2), y = c(3, 4), z = c(5, 6))
col <- "z"
는
> is.vector(DT[, col, with = F])
[1] FALSE
는 대신 data.table
개체를 반환하기 때문이다.
나는 또한 시도했다 : is.vector(DT[, (col), with = F])
그리고 : is.vector(DT[, ..col])
같은 결과. 나는 오류를 만드는 다른 가능성을 시도했다. 직접 변수 이름을 사용
> is.vector(DT[[3]])
[1] TRUE
내가 찾지 못했습니다 :
> is.vector(DT[, z])
[1] TRUE
내가 그것을 열 위치를 사용하지만, 참조의 이름을 사용하지 해결이
post를 발견
data.table
documentation에이 사례에 대한 명시적인 참조. 나는 그것을하는 쉬운 방법이라고 확신하지만 어떻게 찾지 못했습니다.
는 http://stackoverflow.com/a/20043412/1412059 – Roland
@Roland이 솔루션은 인덱스 위치에 의해, 지금은 실현 참조 그것에 대해 이름 참조도 작동하지만 명시 적으로 언급되지 않았습니다. –
이제 나는이 해결책이 @Frank 대답에 의해 해결되었다는 것을 발견했다. [post] (http://stackoverflow.com/questions/16617226/referring-to-data-table-column-by-names-saved-in-variables? rq = 1) 문제는이 특정 문제에 대한 것이 아니었지만 그의 해결책은 내 문제도 해결합니다. –