我对R很新,我需要R将一些数据识别为二进制。所以我做了一个调查,并且我希望R将Gender,Like和Share列分析为二进制 - 所以我可以正确地对它们进行ggplot。
head(d)
Gender Age Like Share
1 Male 26 No 2
2 Male 23 Yes 0
3 Female 21 No 4
4 Male 19 No 0
5 Female 20 Yes 0
6 Male 23 No 4
问题在于我想评估某些因素之间是否存在腐蚀 - 为此,我想做一个看起来像这样的回归线。但问题是我总是收到此错误消息
M <- ggplot(data=d,aes(x=Age,colour=Share) + geom_point())
Error in aes(x = Age, colour = Share) + geom_point() :
non-numeric argument to binary operator
所以,如果你可以帮我解决这两个问题,那就太棒了。 最后一件事,我不知道这是否有帮助,但万一,我会把它给你......
sapply(D,class)
Gender Age Like Share
"integer" "numeric" "integer" "integer"
sapply(D,mode)
Gender Age Like Share
"numeric" "numeric" "numeric" "numeric"
提前多多感谢!
答案 0 :(得分:2)
将这些类别设为二进制文件的最简单方法是:
d$GenderBinary <- 0
d$GenderBinary[d$Gender == "Male"] <- 1
d$LikeBinary <- 0
d$LikeBinary[d$Gender == "Yes"] <- 1
不确定您希望如何制作包含两个以上二元类别的列(“共享”)。
对于ggplot错误,看起来你忘记提供y变量(可能是你的二进制变量)。