У меня есть набор данных опроса, и я хотел бы генерировать графики определенной переменной, сгруппированные по стране респондента. Код, который я написал для создания участков до сих пор:Получение foreach() и ggplot2 для того, чтобы обойти
countries <- isplit(drones, drones$v3)
foreach(country = countries) %dopar% {
png(file = paste(output.exp, "/Histogram of Job Satisfaction in ", country$key[[1]], ".png", sep = ""))
country.df <- data.frame(country) #ggplot2 doesn't appreciate the lists nextElem() produces
ggplot(country.df, aes(x = value.v51)) + geom_histogram()
dev.off()
}
Действительно странная вещь? Я могу запустить isplit(), установить country <- nextElem(countries)
, а затем запустить код без отправки строки foreach - и получить прекрасный сюжет. Если я отправлю foreach, я получу пустые .png-файлы.
Заранее за вашу помощь.
Я могу определенно сделать это со стандартными петлями R, но мне очень хотелось бы лучше понять foreach
.
Не могли бы вы разместить некоторые данные образца? Было бы намного легче протестировать. –
Конечно. Данные о честности и доброте: http://drop.io/cy81s4w/asset/sample-data-rdata –
Надеюсь, что использование реальных данных в порядке - немного необычно, но кажется наиболее эффективным. Просто используйте load (file.choose()) для ввода этих данных в R, затем drones <- sample. Вам также нужно будет установить output.exp в какую-то папку, в которой вы хотели бы показать 19 .png-файлов. –