长期以来的SAS用户,但新手R程序员试图通过Coursera的R编程课程学习。在最后的任务中,尝试输出医院的最低死亡率,具有状态和结果名称的功能输入(例如,心脏病发作)。
我试图用dplyr做所有事情,因为我知道这是一种纠结数据的好方法。但是我的代码在filter_impl(.data,dots)中抛出一个"错误:一元运算符的无效参数"错误。
以下是我尝试过的内容:审核了数据科学" R"书,搜索StackOverflow和其他在线地方,运行我的功能片段缩小它的位置(我只粘贴了我的功能片段,因为错误发生在3个地方),显示追溯等等。当然,在所有这些来源之后,我已经对代码进行了很多不同的编辑,但是nada。
有人能指出我正确的方向吗?
"must_not": [
{
"term": {
"personid.raw": "ABADF00D-BEEF-4218-B59B-A164017A3BA0"
}
},
答案 0 :(得分:0)
该错误可能与mt1022关于字符列类参数的内容有关。相反,您应该使用stringsAsFactors = FALSE
:
outcome <- read.csv("outcome-of-care-measures.csv", stringsAsFactors = FALSE)
您可能还想考虑在函数调用之外加载数据并删除条件语句,除非您计划使用不同的部分来处理具有相同函数的其他类型的结果:
best_heart_attack <- function(state_input, outcome) {
return_outcome <- outcome %>%
select(State, Hospital.30.Day.Death..Mortality..Rates.from.Heart.Attack) %>%
filter(State == state_input) %>%
arrange(Hospital.30.Day.Death..Mortality..Rates.from.Heart.Attack) %>%
top_n(1, -Hospital.30.Day.Death..Mortality..Rates.from.Heart.Attack)
return(return_outcome)
}
best_heart_attack(state_input = "TX", outcome = outcome)