R HI正在尝试解决下面的循环函数,正在运行,获取未找到对象错误数据pic

R HI正在尝试解决下面的循环函数,正在运行,获取未找到对象错误数据pic,r,loops,R,Loops,使用for循环和if控制语句列出泰坦尼克号上从s(南安普敦)发来的34岁或34岁以上的女性姓名 for (i in 1:length(titanicDataset$age)) {if (!is.na(titanicDataset$age[i]) & (titanicDataset$age[i] >= 34) & (titanicDataset$sex==female) & (titanicDataset$home.dist==Southampton)) {print

使用
for
循环和
if
控制语句列出泰坦尼克号上从s(南安普敦)发来的34岁或34岁以上的女性姓名

for (i in 1:length(titanicDataset$age))
{if (!is.na(titanicDataset$age[i]) & (titanicDataset$age[i] >= 34) & (titanicDataset$sex==female) & (titanicDataset$home.dist==Southampton))
{print(titanicDataset$name[i])}}

Error in female : object 'female' not found

[enter image description here][1]


  [1]: https://i.stack.imgur.com/l857a.jpg

这是不可复制的:我们没有
泰坦尼克数据集
,只能推断
女性
南安普敦
对象的值(它们真的应该是字符串吗?)。不过,这不需要是循环的
;如果我推断正确,那么
子集(titanicDataset,!is.na(age)&age欢迎来到SO,ZJ!您的第一个问题还不错,因为它提供了示例代码,谢谢!但是,由于我上面提到的原因,它不是真正可复制的。但是,如果我的评论不能解决您的问题,请通过粘贴
dput(x)的输出来添加您的问题和示例数据
,其中
x
titanicDataset
的一个足够的样本,它不是很大,但仍然显示一些符合条件的行和一些不符合条件的行;您如何选择这些行并不重要。此外,确保提供您的对象
女性
/
南安普敦
。一些很好的参考资料,用于保存问题可复制:,和。谢谢!(顺便说一句:从函数的角度来看,此函数的形式不太好:首先,在作用域冲突中访问
titanicDataset
,这是R可以原谅的,但会使某些函数更难进行故障排除。通常,最好将函数中使用的任何变量作为参数显式传递给它。此外,在这种情况下,不清楚您的
name
参数的用途是什么。也许这是由于您的函数有一个不相关的用途而造成的延迟?)我认为问题在于,您无法用这种方式将变量
name
解析为$print(titanicDataset$name[I])