r - R帮助解决问题
问题描述
我正在尝试创建一个直方图,该直方图将总结回答问题 s22 为 2 或 4 的男性的第二指长度分布。我遇到错误,显示无效休息,我该如何解决这个问题
解决方案
OP对问题的最后一次编辑(截至2021-07-03 03:55Z)显示了代码
s22_2or4_male <- mydata1$second[mydata1$gender == 'male' & mydata1$s22 =='2' | mydata1$s22 == '4']
hist(mydata1$second[s22_2or4_male])
这有几个问题:
- 由于运算符的优先级和or
&
子句周围缺少括号,逻辑表达式将选择男性with以及所有其他行 with ,而不管 gender。s22 == 2
s22 == 4
s22_2or4_male
已包含 column 的选定值mydata1$second
。因此,hist(mydata1$second[s22_2or4_male])
将再次s22_2or4_male
使用子集的值。mydata1$second
这些问题可以通过以下方式解决
s22_2or4_male <- mydata1$gender == 'male' & mydata1$s22 %in% c('2', '4')
hist(mydata1$second[s22_2or4_male])
现在,s22_2or4_male
是一个逻辑向量,指示 的选定行mydata1
。
mtcars
使用数据集的可重现示例
cyl_6or8_gear4 <- mtcars$gear == 4 & mtcars$cyl %in% c(6, 8)
hist(mtcars$mpg[cyl_6or8_gear4])
推荐阅读
- python - 获得关键字参数“标签”的多个值
- javascript - 有没有办法将数组的变量名打印为字符串?(JavaScript)
- django - 将模型和表单拆分为子文件夹结构 Django 2.0+
- node.js - Mongodb网络错误无法在第一次尝试连接到数据库
- math - 找到这个二次方程组的解析解
- java - 如何将可序列化对象发送到另一个 android 应用程序
- delphi - SelectDirectory() 不起作用。它总是返回 false
- r - R 在读取 csv 文件(Unicode)时添加了奇怪的符号
- protractor - 从网格中的一列获取文本
- android - 如何使用 android init.rc (vendor.rc) 读取文件中的值