【问题标题】:Function that selects categories in for a variable in R为 R 中的变量选择类别的函数
【发布时间】:2016-06-23 14:30:13
【问题描述】:

在 R i 中执行计算。通过这些功能,我计算“男性”的数量 但在我的数据集中,我也有“女性” 作为工作,我还有其他五个类别,例如“护士”

这是我的代码

a=sum(mydata$gender == "Male")
b=sum(mydata$job == "Doctor" & mydata$gender == "Male")
ab=b/a

我想要一个函数,例如可以用mydata$gender == "a" 替换mydata$gender == "Male",其中“a”是一个要求我选择我想要的变量类型的函数。例如,在性别中,R 控制台要求我在 mydata$gender 中根据mydata$gender中的类别选择女性

然后在mydata$job == "b" 中,R 控制台要求我根据可变工作中的类别选择护士、清洁工或主管

这可能吗,或者你们知道类似这样的东西吗?

示例 数据集:

  • 身份证、工作、性别、出生日期 1,医生,男,23-04-1980
  • 2,医生,女,23-04-1985
  • 3,护士,女,23-04-1983
  • 4,清洁工,男,23-04-1982
  • 5,董事,男,23-04-1986

【问题讨论】:

  • 如果您提供一些数据样本,则更容易理解问题...
  • R 是一种编程语言,专为在控制台中交互式使用而设计。它并没有真正为创建 UI 元素以选择值提供很多支持。您只需要自己为变量赋值。也就是说,有一些包旨在创建 UI 层。例如,shiny 的创建是为了向 R 程序提供丰富的 HTML 接口。也许这就是你可能感兴趣的东西。

标签: r function


【解决方案1】:
   ID <- c(2,3,4,5)
   Job <- c("Doctor","Nurse","Cleaner","Director")
   Gender <- c("Female","Male")
   DOB <- as.Date(c("1982-04-23","1983-04-23","1984-04-23","1985-04-23"))

   df <- function(a,b,c,d){
   my_df <- data.frame(ID=a,Job=b,Gender=c,DOB=d)
   my_df
   }

   df(ID[3],Job[2],Gender[2],DOB[3])
   #   ID   Job Gender        DOB
   # 1  4 Nurse   Male 1984-04-23

   df(ID[c(1,3)],Job[c(2,2)],Gender[c(1,2)],DOB[c(4,3)])
   #   ID   Job Gender        DOB
   # 1  2 Nurse Female 1985-04-23
   # 2  4 Nurse   Male 1984-04-23

【讨论】:

    猜你喜欢
    • 2012-07-31
    • 2019-08-30
    • 2016-02-25
    • 1970-01-01
    • 2015-10-07
    • 1970-01-01
    • 2015-06-06
    • 2020-08-12
    • 2017-05-22
    相关资源
    最近更新 更多