首页 > 解决方案 > R中的序列组合矩阵

问题描述

我正在寻找为 5 个变量创建一个矩阵,以便每个变量从seq(from = 0, to = 1, length.out = 500)and中获取一个值rowSums(data) = 1

换句话说,我想知道如何创建一个矩阵来显示所有可能的数字组合以及每个row = 1.

标签: rcombinationssequencerowsum

解决方案


如果我理解正确,这至少可以带你走上正轨。

# Parameters
len_vec = 500 # vector length
num_col = 5 # number of columns

# Creating the values for the matrix using rational numbers between 0 and 1
values <- runif(len_vec*num_col)

# Creating matrix
mat <- matrix(values,ncol = num_col,byrow = T)

# ROunding the matrix to create only 0s and 1s
mat <- round(mat)

# Calculating the sum per row
apply(mat,1,sum)

推荐阅读