【问题标题】:How to use an if...else statement in R?如何在 R 中使用 if...else 语句?
【发布时间】:2016-11-13 08:33:43
【问题描述】:

我正在尝试使用 if 语句创建一个变量。我想检查数据帧“dflist”列表中的数据帧中是否存在变量“st”,如果不存在,我想创建变量“st”。我试着这样做(但是,它不起作用):

                    #making list of dataframes, and reading them into r
    mylist = list.files(pattern="*.dta")
    dflist <- lapply(mylist, read.dta13)

# if "st" exists in every dataframe in dflist, return "yes", else if it doesn't exist in a particular dataframe, create variable "st" in those dataframes

if(exists(st, dflist)){
    "yes"
  } else{
    st <- c("total")
    dflist$st <- st
  }

【问题讨论】:

    标签: r database if-statement dataframe dataset


    【解决方案1】:

    我们可以使用lapply 987654322 @并在'data.frame'if'st'中创建一个列。

    dflist1 <- lapply(dflist, function(x) if(!exists("st", x))
                          transform(x, st = "total") else x)
    

    数据

    dflist <- list(data.frame(v1 = 1:5), data.frame(st = 1:6))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-13
      • 2018-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多