【问题标题】:convert all zeros of a matrix in R to NA [duplicate]将R中矩阵的所有零转换为NA [重复]
【发布时间】:2013-01-06 01:25:32
【问题描述】:

可能重复:
Replace all 0 values to NA in R

离开这个question。 R中是否有类似的功能,例如x[is.na(x)] <- 0,只是它将矩阵中的每个零都更改为NA?

【问题讨论】:

    标签: r matrix


    【解决方案1】:

    你可以这样做:

    x[x == 0] <- NA
    

    例如:

    x = matrix(rep(0:1, 50), nrow=10)
    x[x == 0] <- NA
    print(x)
    #      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
    # [1,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
    # [2,]    1    1    1    1    1    1    1    1    1     1
    # [3,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
    # [4,]    1    1    1    1    1    1    1    1    1     1
    # [5,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
    # [6,]    1    1    1    1    1    1    1    1    1     1
    # [7,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
    # [8,]    1    1    1    1    1    1    1    1    1     1
    # [9,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
    #[10,]    1    1    1    1    1    1    1    1    1     1
    

    【讨论】:

    • data.table 对象的等效语法是什么?
    • @dadrivr data.table 没有特别简单的等价物。如果 data.table 完全是数字,我建议将其转换为矩阵,执行此操作,然后将其转回。如果它包含您可以尝试调整 this solution 的因素,但只能反向
    猜你喜欢
    • 1970-01-01
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-28
    • 2017-06-17
    • 1970-01-01
    • 2015-08-02
    相关资源
    最近更新 更多