【问题标题】:R: Change the Contents of Column A based on Column BR:根据B列更改A列的内容
【发布时间】:2023-01-08 03:38:52
【问题描述】:

我正在清理 R 中的一些数据,我正在为一些明显不正确的异常值输入不同的值,所以我正在执行以下操作:

dat$colA[dat$colA > 10000] <- quantile(dat$colA, c(.95))

这会更改两列的值。现在,我想根据我在这里所做的更改更改另一列的内容。例如,上面的行更改了第 24 行和第 676 行的值。现在,我想在第 24 行和第 676 行的不同列中输入一个常量值,但我不想对其进行硬编码。我想执行某种索引来这样做。我怎样才能在 R 中做到这一点?

换句话说,我想将第 24 行和第 676 行的 colB 设置为 1。如何通过引用 colA 中的值来做到这一点?

【问题讨论】:

    标签: r dataframe data-cleaning imputation


    【解决方案1】:

    创建一个索引i 告诉colA 中的何处发生更改,然后根据需要多次使用和重用该索引。

    i <- which(dat$colA > 10000)
    dat$colA[i] <- quantile(dat$colA, 0.95)
    dat$colB[i] <- 1
    

    【讨论】:

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