【问题标题】:Getting error while creating R markdown PDF report创建 R markdown PDF 报告时出错
【发布时间】:2016-09-05 06:14:28
【问题描述】:

我在使用 R markdown 文件创建 PDF 报告时遇到错误。下面是错误的sn-p:

   Error in --dayBikeData <- read.csv("D:\\Madhav\\Study\\MSIS\\PredictiveLearning\\Week-1\\Homework\\Bike-Sharing-Dataset\\day.csv") : 
  object 'dayBikeData' not found
Calls: <Anonymous> ... handle -> withCallingHandlers -> withVisible -> eval -> eval
Execution halted

我在会话中有这个对象 -dayBikeData 但它仍然给出错误不知道如何继续。

从 csv 文件中获取数据的代码:

```{r}

dayBikeData <- read.csv("D:\\Madhav\\Study\\MSIS\\PredictiveLearning
                        \\Week-1\\Homework\\Bike-Sharing-Dataset\\day.csv")

# Performs each of the operation asked in the question
basicOperations <- function(inputData){
  lenData <- length(inputData)
  avg <- round(mean(inputData, na.rm = TRUE), digits = 2) # mean calculation
  standardDeviation <- round(sd(inputData), digits = 2) # Standard deviation
  sem <- round(standardDeviation/sqrt(lenData), digits = 2)
  # Formula for CI is mean - error where error is 
  error = round(qnorm(0.975)*standardDeviation/sqrt(lenData), digits = 2)
  lower_ci <- avg - error
  upper_ci <- avg + error

  # resultList <- list(obs = lenData, mean = avg, standarDeviation = sd,
  #                    standardMeanError= sem, lowerCI = lower_ci, upperCI = upper_ci

  resultList <- c(lenData, avg, standardDeviation, sem,lower_ci,upper_ci)
  print(resultList)
}

#Calculations for the Year Wise Data
# dData2011 <- dayBikeData[dayBikeData$yr==0,]
# dData2012 <- dayBikeData[dayBikeData$yr==1,]
dData2011ResultSet <- basicOperations(dayBikeData[dayBikeData$yr==0,]$cnt)
dData2012ResultSet <- basicOperations(dayBikeData[dayBikeData$yr==1,]$cnt)

#Calculations for the Holiday Wise Data
# dDataHoliady_0 <- dayBikeData[dayBikeData$holiday ==0,]
# dDataHoliady_1 <- dayBikeData[dayBikeData$holiday ==1,]
dDataHoliady0ResultSet <- basicOperations(dayBikeData[dayBikeData$holiday ==0,]$cnt)
dDataHoliady1ResultSet <- basicOperations(dayBikeData[dayBikeData$holiday ==1,]$cnt)

#Calculations for the WorkingDay Wise Data

# dDataWorkingDay_0 <- dayBikeData[dayBikeData$workingday ==0,]
# dDataWorkingDay_1 <- dayBikeData[dayBikeData$workingday ==1,]
dDataWorkingDay0ResultSet <- basicOperations(dayBikeData[dayBikeData$workingday ==0,]$cnt)
dDataWorkingDay1ResultSet <- basicOperations(dayBikeData[dayBikeData$workingday ==1,]$cnt)


#Calculations for the Temperature wise data

avgTemp <- mean(dayBikeData$temp, na.rm = TRUE)
dDataTempGreaterEq  <- dayBikeData[dayBikeData$temp >= avgTemp,]
dDataTempLess <- dayBikeData[dayBikeData$temp < avgTemp,]
dDataTempGreaterEqResultSet <- basicOperations(dDataTempGreaterEq$cnt)
dDataTempLessResultSet <- basicOperations(dDataTempLess$cnt)

#Calculations for the Weather wise data
# dDataWeather_1 <- dayBikeData[dayBikeData$weathersit ==1,]
# dDataWeather_2 <- dayBikeData[dayBikeData$weathersit ==2,]
# dDataWeather_3 <- dayBikeData[dayBikeData$weathersit ==3,]
dDataWeather1ResultSet <- basicOperations(dayBikeData[dayBikeData$weathersit ==1,]$cnt)
dDataWeather2ResultSet <- basicOperations(dayBikeData[dayBikeData$weathersit ==2,]$cnt)
dDataWeather3ResultSet <- basicOperations(dayBikeData[dayBikeData$weathersit ==3,]$cnt)

#Calculations for the Season wise data
# dDataSeason_1 <- dayBikeData[dayBikeData$season ==1,]
# dDataSeason_2 <- dayBikeData[dayBikeData$season ==2,]
# dDataSeason_3 <- dayBikeData[dayBikeData$season ==3,]
# dDataSeason_4 <- dayBikeData[dayBikeData$season ==4,]
dDataSeason1ResultSet <- basicOperations(dayBikeData[dayBikeData$season ==1,]$cnt)
dDataSeason2ResultSet <- basicOperations(dayBikeData[dayBikeData$season ==2,]$cnt)
dDataSeason3ResultSet <- basicOperations(dayBikeData[dayBikeData$season ==3,]$cnt)
dDataSeason4ResultSet <- basicOperations(dayBikeData[dayBikeData$season ==4,]$cnt)



#Constrcut a row wise data
resultData <- rbind(dData2011ResultSet, dData2012ResultSet, dDataHoliady0ResultSet,
                    dDataHoliady1ResultSet,dDataWorkingDay0ResultSet, 
                    dDataWorkingDay1ResultSet,dDataTempGreaterEqResultSet,
                    dDataTempLessResultSet, dDataWeather1ResultSet, 
                    dDataWeather2ResultSet, dDataWeather3ResultSet,dDataSeason1ResultSet, 
                    dDataSeason2ResultSet, dDataSeason3ResultSet,dDataSeason4ResultSet)
colnames(resultData) <- c("N","Mean","SD" , "SEM","Lower_CI", "UPPER_CI")


rownames(resultData) <- c("Year-0", "Year-1", "Holiday-0", "Holiday-1", "WorkingDay-0", 
                          "WorkingDay-1","Temperature >=","Temperature <", "Weather-1",
                          "Weather-2","Weather-3","Season-1","Season-2", "Season-3", 
                          "Season-4")

df.resultData <- as.data.frame(resultData)
df.resultData["Value"] <- NA
df.resultData$Value <- c(2011, 2012, 0,1, 0,1,1, 0, 1,2,3,1,2,3,4)

df.resultData = df.resultData[,c(7,1,2,3,4,5,6)]
library(knitr)
# print(xtable(df.resultData), type = "latex")
kable(df.resultData, format = "markdown")
write.csv(df.resultData, file = "D:\\X\\Study\\MSIS\\PredictiveLearning\\OutputResult.csv")

【问题讨论】:

  • 能贴一下读取csv的代码吗?另外,尝试让你的错误reproducible
  • 您能否将降价降至最低并添加到您的帖子中,以便我们重现相同的错误?
  • 在会话(控制台)中拥有对象与单击 R-Studio 中的“编译”按钮时可用的对象不同,b/c 这将启动一个新会话(文件路径为您的 R-Markdown 文件作为工作目录)。我的猜测是该文件无法读取
  • 你的路径显然是错误的:有一个\n,中间有很多空格:) 你不能缩进这样的字符串!

标签: r r-markdown


【解决方案1】:

您的文件路径错误...中间有一个新行和很多空格。

> "D:\\Madhav\\Study\\MSIS\\PredictiveLearning
+                         \\Week-1\\Homework\\Bike-Sharing-Dataset\\day.csv"
[1] "D:\\Madhav\\Study\\MSIS\\PredictiveLearning\n                        \\Week-1\\Homework\\Bike-Sharing-Dataset\\day.csv"

因此文件没有被正确读取,因此该对象在 knitr 会话中不可用。

【讨论】:

    【解决方案2】:

    我从 UCI 机器学习存储库下载了你的数据集,将你的 markdown 保存在一个新文件夹中,通过删除路径调整了文件名,运行它,它运行良好。

    所以我可能您的会话已损坏,或者路径错误,或者其他什么。试试我所做的,它应该可以工作。

    证明:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多