如何忽略R中的空值并继续运行代码


data_preprocessing <-
  function(trx, var_names = var_names_list) {
    trx_input <- data.frame(list(BankOwner = trx$BankOwner))
    data <- trx_input %>%
      mutate(full = ifelse(BankOwner, 1, 0))
  }

在此代码中,当银行所有者以角色格式存在数据框架时,它正在起作用。当银行主==没有"的null时,我会给我错误。我该如何解决这个问题。我想忽略数据集中有空或应用功能时。

如果缺少值,您该怎么办?如果我可以看到您的数据结构,那将是有帮助的。有两个主要选择:

假装NA值不会丢失

这可能是您想要的。

data_preprocessing <-
  function(trx, var_names = var_names_list) {
    trx_input <- data.frame(list(BankOwner = trx$BankOwner))
    data <-
      trx_input %>%
      mutate(full = ifelse(ifelse(is.na(BankOwner), "NA", BankOwner), 1, 0))
  }

一旦检测到丢失的数据,请尽早结束功能。

data_preprocessing <-
  function(trx, var_names = var_names_list) {
    if(any(is.na(BankOwner))) {
      warning("Missing data detected, terminating function")
      return()
    }
    trx_input <- data.frame(list(BankOwner = trx$BankOwner))
    data <- trx_input %>%
      mutate(full = ifelse(BankOwner, 1, 0))
  }

R中的NULLNA之间存在差异。我认为您的意思是NA。假设这一点,让我将您的最后一个命令在功能中转到

data <- trx_input %>%
    mutate(full = 0) %>%
    mutate(full = replace(full, BankOwner, 1)

相关内容

  • 没有找到相关文章

最新更新