2012-03-18 12 views
10

Jak mogę ocenić ciąg znaków klasy jako ramkę danych?R ocenia łańcuch jako ramkę danych

Konkretnie mam kilka ramek danych powiedzmy: X0, X1, X3:

x0 <- data.frame(a=1,b="a") 
x1 <- data.frame(a=2,b="b") 
x2 <- data.frame(a=3,b="c") 

mają wszystkie taką samą strukturę i chciałbym połączyć je z rbind. Aby uniknąć wywoływania każdej pojedynczej ramki danych, używam wyrażenia regularnego:

x <- grep("x\\d",ls(),perl=TRUE,value=TRUE) 

Daje mi to wektor klasy postaci. Teraz chciałbym, aby połączyć je z jednym dataframe zwanego x.all:

x.all <- rbind(x) 

Co otrzymuję jest macierzą o wymiarze (1,3). Czy ktoś może mi dać wskazówkę? Bardzo dziękuję za pomoc.

Odpowiedz

8

Korzystanie get i do.call:

do.call(rbind, lapply(x, get)) 
# a b 
# 1 1 a 
# 2 2 b 
# 3 3 c 
+0

Dzięki wielkie! Nie wiedziałem o.call. To potężna funkcja. – giordano

Powiązane problemy