r语言 - 在我的代码的每个指数中的意外输入



当我尝试这些代码时收到了这些错误

> fk <- function(u.vect, lambda, alpha, beta, x, k) {
+   res <- sapply(u.vect, function(u) {
+     # Cause-specific hazard
+     hk <-
+       lambda[k] * alpha[k] * (uˆ(alpha[k] - 1)) * exp(sum(unlist(beta[, k]) * x))
Error: unexpected input in:
"    hk <-
lambda[k] * alpha[k] * (uˆ"
>     # Cumulative cause-specific hazard
>     Hk <-
+       lambda * (rep(u, length(lambda))ˆalpha) * exp((t(beta) %*% matrix(x, ncol = 1))[, 1])
Error: unexpected input in:
"    Hk <-
lambda * (rep(u, length(lambda))ˆ"
>     # Cause-specific hazard x Overall survival
>     aux <- hk * exp(-sum(Hk))
Error: object 'hk' not found
>     return(aux)
Error: object 'aux' not found
>   })
Error: unexpected '}' in "  }"
>   return(res)
Error: no function to return from, jumping to top level
> }
Error: unexpected '}' in "}"

这个错误是什么意思,我如何修复它?

Please help, Thank You

R通常不容忍非ascii字符,特别是作为操作符。我已经将ˆ替换为^(正如MartinGal建议的那样),并且该函数可以毫无怨言地读取/解析。

fk <- function(u.vect, lambda, alpha, beta, x, k) {
res <- sapply(u.vect, function(u) {
# Cause-specific hazard
hk <-
lambda[k] * alpha[k] * (u^(alpha[k] - 1)) * exp(sum(unlist(beta[, k]) * x))
# Cumulative cause-specific hazard
Hk <-
lambda * (rep(u, length(lambda))^alpha) * exp((t(beta) %*% matrix(x, ncol = 1))[, 1])
# Cause-specific hazard x Overall survival
aux <- hk * exp(-sum(Hk))
return(aux)
})
return(res)
}

最新更新