Markdown在编织时无法找到参数

3
当我尝试编织以下文件时:
----
title: "jerHW52"
output: html_document
params:
  missiontype: "Successful.Unmanned"
---

```{r warning=FALSE,echo=FALSE}
knitr::opts_chunk$set(echo=FALSE)
library(tidyr)
library(ggplot2)
Launch_Data<-read.csv("NASA_Launch_Data.csv",header=TRUE)
NASA_Launch_Data<- Launch_Data %>% filter(Launch_Data$Type==params$missiontype)
ggplot(NASA_Launch_Data, aes(x=Year, y=Missions)) + geom_line() 
```

我收到以下错误信息

Error in filter(., Launch_Data$Type == params$missiontype) : object 'params' not found Calls: ... _fseq -> freduce -> withVisible -> -> filter Execution halted

为什么无法找到params?
这是NASA_Launch_Data.csv中数据的开头:
"","Year","Type","Missions"
"1",1957,"Successful.Unmanned",3
"2",1958,"Successful.Unmanned",28
"3",1959,"Successful.Unmanned",23
"4",1960,"Successful.Unmanned",40
"5",1961,"Successful.Unmanned",48
"6",1962,"Successful.Unmanned",76
"7",1963,"Successful.Unmanned",67
"8",1964,"Successful.Unmanned",99
"9",1965,"Successful.Unmanned",119
"10",1966,"Successful.Unmanned",129

能够看到 NASA_Launch_Data.csv 的一些示例数据会很有用。但是看起来您正在错误地使用 filter,正如消息所说,根本没有名为 params 的对象。如果有一个名为 Type 的列,请直接使用该名称,而不是 Launch_Data$Type。是否存在名为 paramsmissiontype 的列? - neilfws
参数应该是指在标头中传递给Markdown文档的参数,对吧?因此,除非您选择了R Studio中的“使用参数编织”(或在控制台命令行上更改了它,但我正在使用R Studio),否则params $ missiontype应该为“Successful.Unmanned”并进行更改... - jerH
没错,我第一次忽略了 params 的使用。 - neilfws
1个回答

4
答案是我很蠢......请注意我的文档顶部的YAML头。
----
title: "jerHW52"
output: html_document
params:
  missiontype: "Successful.Unmanned"
---

第一行应该只有三个破折号,但实际上有四个。删去一个破折号后一切正常...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接