在R语言中输入矩阵可通过以下多种方式实现,具体方法如下:
一、使用`matrix()`函数直接创建矩阵
基本语法 ```R
matrix(data, nrow, ncol, byrow = FALSE, dimnames = NULL)
```
- `data`:输入的向量或列表,必须非空;
- `nrow`:行数(默认为1);
- `ncol`:列数(默认为1);
- `byrow`:逻辑值,`TRUE`按行填充,`FALSE`按列填充(默认);
- `dimnames`:可选参数,指定行名和列名(如`list("row1", "row2")`和`c("col1", "col2")`)。
示例
```R
按行填充的3x3矩阵
m1 <- matrix(1:9, nrow = 3, ncol = 3, byrow = TRUE)
print(m1)
```
输出:
```
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
```
二、通过向量创建矩阵
使用`matrix()`函数时,可将向量按行或按列填充:
默认按列填充:`matrix(1:6, nrow = 2)`生成2行3列矩阵;
按行填充:`matrix(1:6, nrow = 2, byrow = TRUE)`。
三、从数据框或表格转换
使用`as.matrix()`函数将数据框转换为矩阵:
```R
df <- data.frame(A = 1:3, B = 4:6, C = 7:9)
mat <- as.matrix(df)
print(mat)
```
输出:
```
A B C
1 1 4
2 2 6
3 3 9
```
四、其他注意事项
数据类型:
矩阵元素应为数值型,若输入非数值型数据会报错;
维度匹配:
`nrow`与`ncol`需满足`length(data) == nrow * ncol`;
修改矩阵元素:
可通过索引赋值修改,例如`mat[2, 3] <- 10`。
通过以上方法,可灵活创建矩阵并根据需求调整结构和属性。