R语言如何将10*10的数据一次排到第一列成100*1

就是excel读取的100行100列的数据,把后面99列依次排到第一列成一个10000*1的形式
最新回答
守护在此方

2024-09-27 02:16:55

#R中的matrix默认情况下是按列填写数字的
df <- matrix(1:10, nrow = 5)
df
[,1] [,2]
[1,] 1 6
[2,] 2 7
[3,] 3 8
[4,] 4 9
[5,] 5 10
# 如果数据为matrix结构,直接as.vector, 变为vector之后可以用as.matrix自己转换成10000*1的格式(感觉没必要再换了,除非要继续进行矩阵运算)
df <- matrix(sample(1:10,100*100,replace = TRUE), nrow = 100)
df_numeric <- as.vector(df)
df_numeric
# 如果数据为data.frame结构,先转换为matrix再转换为vector
df <- data.frame(x1 = sample(c("Normal","Unnormal"), 10, replace = TRUE),
x2 = sample(c("a","b"), 10,replace = TRUE),
x3 = sample(c(1, 2), 10,replace = TRUE))
df_char <- as.vector(as.matrix(df))
df_char # 如果数据中有字符,那转换之后必定全是字符结构
# 最粗暴的方法定义个10000的数组,然后一列列放进去(这里别用append)