Ссылаясь на i-й столбец в списке R - PullRequest
0 голосов
/ 23 октября 2018

При выполнении следующего:

dataframe_temp = data.frame(ID = c(1, 1, 2, 3, 3), 
                            City = c("a", "a", "b", "c", "c"), 
                            Qty = c(20, 14, 40, 50, 60))

dataframe.list <- list()

# avoid hardcoded numbers as ", 2" as theses can 
# change in the future, after e.g. an expansion of the dataframe!
for (city in unique(dataframe_temp$City)) { 

  print(city)

  dataframe.list[[i]] = subset(dataframe_temp, City == city) 

  # use your folder location instead of "~/"
  write.csv(x = dataframe.list[[i]], file = paste0("~/", "dataframe_for_city_", city,".csv")) 
}

Я получаю следующую ошибку

Error in i : object 'i' not found

Теперь, насколько я понимаю, код выполняет следующее:

1) Создает фрейм данных.(Матрица 5x3 с идентификатором, City и Qty в качестве отдельных столбцов).

2) Создает пустой список.

3) Для каждого города в уникальном списке городов создайте кадр данных с помощьювзять исходный фрейм данных и «отфильтровать» его по каждому уникальному городу, а затем экспортировать его как CSV.

Что я не понимаю, зачем мне нужна переменная i, так как всписок каждый раз (исходный кадр данных фильтруется по уникальному городу).

Кроме того, когда он говорит for (city in unique(dataframe_temp$City)) как он узнает, что такое city?Или это просто имя для элементов в столбце Город в начальном фрейме данных?

Кто-нибудь может мне помочь, чтобы этот код работал?

Спасибо.

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