【发布时间】:2018-11-10 07:01:19
【问题描述】:
我写了三个函数,其中两个函数(即function1和function2)用于populatedataset的另一个函数。
当我收到Error in if (num == 1) { : argument is of length zero 错误时,我正在运行函数populatedataset
我认为这是由于 function2 的 'if (num == 1) {: ' 部分造成的。
function2 <- function(data, table, dict) {
personindex <- substr(deparse(substitute(data)), start = 1, stop = 2)
num <- table[person == as.character(personindex)]$newpersonality
if (num == 1) {
proptable <- data %>% inner_join(dict[score == 1]) %>% count(word)
proportion <- sum(proptable$n)/nrow(data)
return(proportion)
}
else {
proptable <- data %>% inner_join(dict[score == 0]) %>% count(word)
proportion <- sum(proptable$n/nrow(data))
return(proportion)
}
}
populatedataset <- function(data, table, dict) {
list_a <- c(function1(data, dict), function2(data, table, dict))
return (list_a)
}
我一直在其他页面上阅读此错误,但似乎找不到与此问题相关的解决方案。
我将不胜感激任何对此错误的见解!
【问题讨论】:
标签: r function if-statement