R Вставить список для привязки - PullRequest
2 голосов
/ 03 апреля 2020
data1 = data.frame("time" = c(1:10))
data2 = data.frame("time" = c(11:20))
data3 = data.frame("time" = c(21:30))
data4 = data.frame("time" = c(31:40))

rbind(data1, data2, data3, data4)

rbind(paste("'","data","'",1:4,sep=","))

Я хочу связать целую кучу фреймов данных, но вместо того, чтобы излагать все, они хотят использовать функции вставки. Здесь, в моем простом примере, вы увидите, что он работает не так, как хотелось бы, но когда я разбираю кадры данных, он работает ..

1 Ответ

3 голосов
/ 03 апреля 2020

Мы можем использовать mget в строках paste d для возврата значений имен объектов в list, а затем rbind элементов с do.call

`row.names<-`(do.call(rbind, mget(paste0('data', 1:4))), NULL)

Или используйте pattern в ls

do.call(rbind, mget(ls(pattern = '^data\\d+$')))

При data.table это будет rbindlist

library(data.table)
rbindlist(mget(paste0('data', 1:4)))
...