добавить фрейм данных к построенному имени - PullRequest
1 голос
/ 29 июля 2010

У меня есть это

для (я в 1:10)

и внутри него у меня есть фрейм данных: например,

df<-1:100

и я хочу присвоить кадру данных конкретное имя, которое я хочу создать

что-то вроде: (не то, что это работает)

paste("name", variable[i])<- df

Редактировать:

Как мне тогда получить доступ к этим построенным значениям в другом цикле (при условии, что я использовал assign)

    datalist <- paste("a",1:100,sep="")
    for (i in 1:length(datalist)){

}

Ответы [ 2 ]

7 голосов
/ 29 июля 2010

Я предлагаю assign, как показано здесь:

for(i in 1:100){
  df <- data.frame(x = rnorm(10),y = rpois(10,10))
  assign(paste('df',i,sep=''),df)
}
0 голосов
/ 29 июля 2010

Вы можете сохранить вывод вашего цикла в списке:

set.seed(10)
x = list()

for(i in 1:10){
  x[[i]] <- data.frame(x = rnorm(100), y = rnorm(100))
  }

Тогда x будет списком длины 10, и каждый элемент списка будет иметь значение dim c (100, 2)

> length(x)
[1] 10
> dim(x[[1]])
[1] 100   2
> 

Конечно, вы можете назвать и элементы списка:

names(x) = letters[1:10]

x[["a"]]


              x           y
1    0.01874617 -0.76180434
2   -0.18425254  0.41937541
3   -1.37133055 -1.03994336
4   -0.59916772  0.71157397
5    0.29454513 -0.63321301
6    0.38979430  0.56317466
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...