【问题标题】:assign values from same row in R从R中的同一行分配值
【发布时间】:2019-07-23 22:37:29
【问题描述】:

我只想在 A = 1 时将 B 的行值分配给 A 行。这是我到目前为止所做的:

数据框:

df <- data.frame('A' = c(1,1,2,5,4,3,1,2), 'B' = c(100,200,200,200,100,200,100,200))


        A     B
    1   1     100
    2   1     200
    3   2     200
    4   5     200
    5   4     100
    6   3     200
    7   1     100
    8   2     200

输出:

df$A[df$A == 1] <- df$B

        A     B
    1   100   100
    2   200   200
    3   2     200
    4   5     200
    5   4     100
    6   3     200
    7   200   100
    8   2     200

如您所见,第 1 行和第 2 行做了它们应该做的事情。但是,第 7 行没有,而是从第 3 行获取值 - 它是按顺序分配值。

我的问题:如何分配从同一行获取输入的值?

【问题讨论】:

    标签: r dataframe row assign sequential


    【解决方案1】:

    用途:

    df$A[df$A == 1] <- df$B[df$A == 1]
    

    您需要将相同的索引应用于要替换的列和保存替换的列。

    【讨论】:

      猜你喜欢
      • 2015-03-29
      • 2015-05-09
      • 2021-05-16
      • 1970-01-01
      • 2022-08-09
      • 1970-01-01
      • 1970-01-01
      • 2020-04-15
      • 1970-01-01
      相关资源
      最近更新 更多