для l oop для создания фреймов данных, которые являются подмножествами другого фрейма данных - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь создать для l oop, который создает подмножества моих исходных данных

Сейчас я создаю подмножества следующим образом:

Dataset_1 <- subset(Dataset1, compliance>=0)    
Dataset_2 <- subset(Dataset1, compliance>=5) 
Dataset_3 <- subset(Dataset1, compliance>=10)
Dataset_4 <- subset(Dataset1, compliance>=15)
Dataset_5 <- subset(Dataset1, compliance>=20)
Dataset_6 <- subset(Dataset1, compliance>=25)

Однако я бы хотел использовать для l oop, чтобы сделать это и думал, что-то вроде этого может работать:

Dataset_ = {}
for (i in 1:6){
  Dataset_[[i]] = subset(Dataset1, compliance>=(0+(i-1)*5))
}

Когда я это делаю, я получаю список с фреймами данных в нем. Однако мне было интересно, есть ли способ написать для l oop, чтобы кадры данных не помещались в список, а вместо этого создавались как отдельные кадры данных. Причина: я хотел бы сохранить фреймы данных, созданные как файлы .Rdata, в папке, например:

save(Dataset_2, file = "Hypothesis1/Dataset1.RData")
save(Dataset_3, file = "Hypothesis1/Dataset2.RData")
save(Dataset_4, file = "Hypothesis1/Dataset3.RData")

1 Ответ

0 голосов
/ 31 января 2020

Вам не нужно создавать список. Вы можете просто записать файлы прямо на диск в вашем for l oop следующим образом:

for (i in seq(6)) {

  save(subset(Dataset1, compliance >= (0 + (i-1) * 5)),
       file = sprintf("Hypothesis1/Dataset%s.RData", i))

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...