【问题标题】:Matrix with the bottom triangle of only `1`s and top triangle of only `0`s in RR中只有“1”的底部三角形和只有“0”的顶部三角形的矩阵
【发布时间】:2021-01-12 08:01:12
【问题描述】:

我想知道是否有一种方法可以生成具有任何请求的行数和列数的矩阵,这样底部三角形只有1s,顶部三角形只有0s。

预期输出的示例如下所示。这在R 中可行吗?

     [,1] [,2] [,3] [,4]
[1,]    0    0    0    0
[2,]    1    0    0    0
[3,]    1    1    0    0
[4,]    1    1    1    0
[5,]    1    1    1    1

【问题讨论】:

    标签: r function dataframe loops matrix


    【解决方案1】:

    您可以使用lower.tri 辅助函数

    lower_mat <- function(r, c) {
      m <- matrix(0, nrow=r,ncol=c)
      m[lower.tri(m)] <- 1
      m
    }
    
    lower_mat(5,4)
    #      [,1] [,2] [,3] [,4]
    # [1,]    0    0    0    0
    # [2,]    1    0    0    0
    # [3,]    1    1    0    0
    # [4,]    1    1    1    0
    # [5,]    1    1    1    1
    

    【讨论】:

    • 非常感谢!快速跟进,是否可以向矩阵添加一些可调节的随机噪声,即底部 1s 中的随机 0s 和 0s 顶部的随机 1s?
    • 我相信有一种方法取决于您对“噪音”的准确定义以及要求是什么。但这听起来应该是一个不同的问题。
    • 好的,请check this out
    猜你喜欢
    • 2018-12-17
    • 1970-01-01
    • 1970-01-01
    • 2015-06-01
    • 2020-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-12
    相关资源
    最近更新 更多