【问题标题】:Summarising Data Issue in R总结 R 中的数据问题
【发布时间】:2021-03-13 16:30:26
【问题描述】:

我需要为一项作业总结我的数据,但我不明白我怎么没有得到它。 我是 R Studios 的新手,我已尽我所能放弃 Uni 给我的建议(这太糟糕了)。

主要问题是: “总结过去一年内住院患者的人数 离婚或合法分居。”

到目前为止,这是我所在的位置:

r <- c("Single"= 1, "Other"= 2, "Divorced"= 3, "Married"= 4 )
Group123 <- VisED[(VisED$disposition = 1) & (VisED$maritalstatus)]

Admission 为 1,Discharged 为 0。向量是为了整理所有不同的关系状态'。 我想也许我必须创建一个向量然后从那里开始?

目标是将所有入院的离婚患者分配给一个变量,然后继续计算平均值和 SD。

我也尝试过 maritalstatus=divorced 但这不起作用。

Group123 <- VisED[(VisED$disposition = 1) & (VisED$maritalstatus=divorced)]

我得到了

Error in `[.data.frame`(VisED, (VisED$disposition = 1) & (VisED$maritalstatus = divorced)) : 

找不到对象“离婚”

不过,总的来说,我很困惑,所以我可以提供任何建议或其他任何东西来使这更容易理解,然后告诉我。

谢谢! :))

编辑:尝试了一些 cmets 我现在收到此消息

Error in `[.data.frame`(VisED, (VisED$disposition = 1) & (VisED$maritalstatus ==  : 

选择了未定义的列

响应这行代码:

Group123 <- VisED[(VisED$disposition = 1) & (VisED$maritalstatus == "divorced")]

我现在哪里出错了?

PS。再次抱歉

【问题讨论】:

  • 您需要使用 == 而不是 = 来检查相等性。在处理字符串值时也不要忘记使用 ' 。例如VisED$maritalstatus == "离婚"
  • 这很好,非常感谢!但是现在,当我尝试找到平均值时,我只是不断收到“参数不是数字或逻辑:返回 NA”。你知道为什么会这样吗?抱歉,我知道这一定很乏味,但我不确定。谢谢

标签: r summary


【解决方案1】:

有两件事,您需要在逻辑语句之后添加,,让他们知道您选择的是行,而不是列——如果您忽略它,它会假定您选择的是列,因此未定义的列错误。其次,要选择列,你需要做Group123$variable_name。将下面的 nadmissions 替换为您的变量名。如果您只是简单地执行mean(Group123),则会收到该错误,因为您试图取数据框的平均值,这是不允许的。

VisED=data.frame(nadmissions=1:10, disposition=rep(c(1, 0), each=5), maritalstatus=rep(c("divorced"), 10), stringsAsFactors = FALSE)
Group123 <- VisED[(VisED$disposition == 1) & (VisED$maritalstatus=="divorced"),]
variable=as.numeric(Group123$nadmissions)
mean(variable, na.rm=TRUE)
3

sd(variable, na.rm=TRUE)
1.581139

【讨论】:

  • 嘿!太好了,谢谢!如果可能的话,你能解释一下代码的每一部分发生了什么,以便我能更好地理解吗?再次感谢你! :)
  • 第一部分只是制作一个类似于你的假数据框,因为它没有提供。同样,在 == 语句之后需要一个逗号来表明您正在选择行。 as.numeric 将字符转换为数字,以防列是字符(但如果它们是数字则不是必需的)。尝试将其排除在外,看看是否没有错误。 na.rm 表示忽略向量中的 NA(缺失值)。如果没有 NA,则与不说 na.rm=TRUE 相同。尝试将其排除在外,看看它是否仍然有效。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-21
  • 1970-01-01
  • 2019-07-28
  • 1970-01-01
相关资源
最近更新 更多