如何解决“ FUN(X [[i]],...)中的错误:仅在具有所有数字变量的数据框中定义”

时间:2019-03-22 23:31:05

标签: r

我打算在数据上绘制一个qq图,但是这提醒我qqnorm函数仅适用于数值数据。

由于该因素包括A,B,C,D及其两种,三种和四种方式的相互作用,所以我不知道如何将其转换为数值形式。

数据如下:

Effects,Value
A,76.95
B,-67.52
C,-7.84
D,-18.73
AB,-51.32
AC,11.69
AD,9.78
BC,20.78
BD,14.74
CD,1.27
ABC,-2.82
ABD,-6.5
ACD,10.2
BCD,-7.98
ABCD,-6.25

我的代码如下:

library(readr)
data621 <- read_csv("Desktop/data621.csv")
data621_qq<-qqnorm(data621,xlab = "effects",datax = T)
qqline(data621,probs=c(0.3,0.7),datax = T)
text(data621_qq$x,data621_qq$y,names(data621),pos=4)

1 个答案:

答案 0 :(得分:2)

如果使用正确的列而不是整个数据框,您的代码将起作用。例如,

data621_qq <- qqnorm(data621$Value, xlab = "Effects", datax = TRUE)
qqline(data621$Value, probs = c(0.3, 0.7), datax = TRUE)
text(data621_qq$x, data621_qq$y, data621$Effects, pos=4)

顺便说一句,names(data621)会为您提供列名,而不是效果名(作为值存储在列中)。