2013-02-21 8 views

답변

1

당신이 rownames로 첫 번째 열에로 그 값을 저장하면이 형식주의 사용하여 액세스 할 수 있습니다 :

dfrm["ABC", ] # result c(2,3,4) 

dfrm <- read.table(text="V1 V2 V3 
    ABC 2 3 4 
    DEF 3 4 5 
    FRD 3 5 6", header=TRUE) 
dfrm["ABC" , ] 
#  V1 V2 V3 
# ABC 2 3 4 
1

는 것 같아요 :

df <- structure(list(V1 = structure(1:3, 
     .Label = c("ABC", "DEF", "FRD"), class = "factor"), 
     V2 = c(2L, 3L, 3L), V3 = 3:5, V4 = 4:6), 
     .Names = c("V1", "V2", "V3", "V4"), class = "data.frame", 
     row.names = c(NA, -3L)) 

df.l <- as.list(df[,2:4]) 
names(df.l) <- df[,1] 

# $ABC 
# [1] 2 3 3 

# $DEF 
# [1] 3 4 5 

# $FRD 
# [1] 4 5 6 

지금, 당신을 수행하여 이러한 벡터에 액세스 할 수 있습니다 : 당신이 data.frame로 유지하고 싶을 경우, df.l[["ABC"]]

또는, 당신이해야 당신의 data.frame 그것의로 열 이름의 첫 번째 열 수 있도록 : 이제

df.o <- df[,2:4] 
names(df.o) <- df[,1] 

# ABC DEF FRD 
# 1 2 3 4 
# 2 3 4 5 
# 3 3 5 6 

을, 당신에게이 유사한 액세스 할 수 있습니다 list (data.frame은 내부적으로 list입니다)에 액세스합니다.

> df.o[["ABC"]] # or equivalently as df$ABC 
# [1] 2 3 3 
관련 문제