Error: missing values and NaN's not allowed if 'na.rm' is FALSE

Trying out multiple models chapter of #r4ds and ran into an error message at the end:

Error: missing values and NaN's not allowed if 'na.rm' is FALSE In addition: Warning message: In ns(as.numeric(Month), 4) : NAs introduced by coercion

with

ADA_model<- function(ADA_mutiple_model){ lm(ADA ~ ns(as.numeric(Month), 4), data=ADA_mutiple_model) } ADA_mutiple_model <- ADA_mutiple_model %>% mutate(model=map(data,ADA_model))

as the code I used that creates the error.

See mod3 below to see what the function looks like

<img src=https://www.e-learn.cn/content/wangluowenzhang/"https://i.stack.imgur.com/KhS3h.png" alt="enter image description here">

Answer1:

Your problem has nothing to do with the use of lm, but inside splines::ns when generating B-spline basis for natural cubic splines. <strong>Very likely your Month is a character variable</strong>, and you can not use as.numeric for coercing.

<hr>

I just checked your attached figure. The x-axis in the plots verifies what I guessed. You need to use 1:12 for Month, not "JAN", "FEB", etc.

人吐槽 人点赞

Recommend

Comment

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:Error: missing values and NaN's not allowed if 'na.rm' is FALSE