r - 二项式线性模型拟合问题
问题描述
我是一名学生,正在为学校开展一个项目,我使用的示例代码有一条用于数据集的线性模型线(蓝色)。同时,当我用我的数据运行完全相同的代码时,它会给我两条蓝线,而不是我想要的一条对角线。我不知道我做错了什么/我的数据和示例数据集之间的区别是什么。任何帮助将不胜感激!
示例代码:
drunkdoor <- read_csv("https://uoepsy.github.io/data/drunkdoor.csv")
head(drunkdoor)
ggplot(drunkdoor, aes(x=age, y=notice)) + geom_point()+geom_smooth(method = "lm", se = FALSE, fullrange = TRUE) + xlim(30, 80)
我的代码:
data1 <- read_csv('https://uoepsy.github.io/data/dapr2_2021_nullsit_data.csv')
head(data1)
ggplot(data1, aes(x = z_test, y = intervention1)) + geom_point() + geom_smoot(method = "lm)
解决方案
不同之处在于,在示例图中,y
当您使用字符值时,它们使用数值。解决这个问题的一种方法是指定“组”值,以便 ggplot 知道哪些点集应该在同一行中。如果您在其中使用group=1
,aes()
它将知道将所有点组合在一起并绘制一条线(而不是每个字符值的一条线)
ggplot(data1, aes(x = z_test, y = intervention1, group=1)) +
geom_point() +
geom_smooth(method = "lm")
或者,您可以将值更改为数值
ggplot(data1, aes(x = z_test, y = ifelse(intervention1=="control",0,1))) +
geom_point() +
geom_smooth(method = "lm")
请注意,这两行是不同的,因为它将值在 y 轴上以不同的顺序排列。您需要决定是要“控制”在顶部还是“控制”在底部。
推荐阅读
- python - subMethod(m) 的复杂度为 O(m),下面代码的最坏情况复杂度是多少?
- r - 整齐的数据,列名中有多个变量,每行有多个观察值
- node.js - 使用节点js将数据保存到mongodb后如何返回2个数组
- turtle-graphics - 无论我输入什么参数,速度函数都不会改变海龟的位置
- python - 类型错误:+ 不支持的操作数类型:“浮点”和“时间”
- algorithm - 一棵二叉树的不同遍历可以相同吗?
- java - 如何在后台服务中检测视图之外的触摸事件?
- java - 读取文件 - 哪种方法是可测试的?
- javascript - 证明工作量证明是在特定机器上计算的?
- spring-boot - HttpClientErrorException$BadRequest: 400 : [no body] 调用 restTemplate.postForObject 时