多年来我都没有做过R编码。我退休了,是一个简单的业余程序员。所以当我编写代码时,我依靠的是“蛮力”,即老式的程序代码。
我有少量代码可以满足我的需求。但是,与我最近看到的相比,它笨拙且丑陋。我希望有人能提供有关更新此代码的建议。
我正在使用nflscrapR程序包出于个人爱好目的访问数据(例如,跟踪最近几天哪个QB在他的生活中争先恐后?有多少次?与其他人相比呢?)
下面的示例代码使用游戏ID数据来访问游戏摘要数据(但我真正的兴趣是逐次游戏数据)。我从游戏ID创建数据框变量名,下载数据,将其保存到数据框,然后将数据写入.csv文件,最后将这些文件合并为一个每周文件。 (我每周手动设置“ k”变量,在代码中多次更改目录,并且文件命名很丑。)我对改进变量的创建和分配以及更简化的“循环”很感兴趣。 >
###### Weekly game summary script #######
library(nflscrapR)
k <- 3
setwd("./nflscrapeR/GameIDs/2018 Game IDs")
gameID.File <- read.csv(file = paste("2018 Week ", k, " GameIDs.csv", sep = ""))
gameID.list <- gameID.File$game_id
res <- paste0("ds", gameID.list, sep = "")
setwd(paste("./nflscrapeR/GameSummary/Week ", k, sep = ""))
for(i in 1:length(res)){
write.csv(assign(res[[i]],drive_summary(gameID.list[[i]])), file = paste(res[[i]], ".csv", sep = ""), row.names = FALSE)
}
file_names <- dir()
weeklysummary <- do.call(rbind,lapply(file_names,read.csv))
setwd("./nflscrapeR/GameSummary")
write.csv(weeklysummary, file = paste("week", k, "summaries_2018.csv", sep = ""), row.names = FALSE)