当我使用group_by函数运行shapiro.test代码时,我得到一个未完成的错误

时间:2018-05-04 03:40:41

标签: r normal-distribution

以下是简化形式的数据框和代码

Type <- c("Bark", "Redwood", "Oak")
size <- c(10,15,13)
width <- c(3,4,5)
Ratio <- size/width
df <- data.frame(Type, size, width, Ratio)
mutate(df, ratio_log = log10(Ratio))
df %>% group_by(Type) %>% shapiro.test(ratio_log)

# Error in shapiro.test(., ratio_log) : unused argument (ratio_log)

请帮忙!谢谢。

1 个答案:

答案 0 :(得分:0)

?shapiro.test,我们可以看到唯一可能的论点是:

  • x,数据值的数字向量

使用%>%运算符,您可以看到输出显示

  

shapiro.test(。,ratio_log)出错:未使用的参数(ratio_log)

注意ratio_log之前的点。这意味着shapiro.test已将df视为其参数。

无需使用shapiro.test进行分组。此外,您要使用在df中创建的列,您应该写:

df <- df %>% mutate(df, ratio_log = log10(Ratio))

您现在可以使用shapiro.test之类的

shapiro.test(df$ratio_log)

df$ratio_log %>% shapiro.test