for循环输出10个(10,)的数组,如何将这个10个数组组成一个10*10的新矩阵
时间: 2024-02-27 10:54:11 浏览: 175
10×10以内的矩阵相乘
要将输出的10个(10,)的数组组成一个10*10的新矩阵,可以使用numpy库中的reshape方法。具体做法是,先创建一个空的10*10的矩阵,然后遍历这10个数组,将每个数组中的元素添加到新矩阵中的相应位置。以下是一个示例代码:
```python
import numpy as np
# 创建一个空的10*10矩阵
new_matrix = np.zeros((10, 10))
# for循环输出10个(10,)的数组
for i in range(10):
array = np.random.rand(10) # 生成一个随机的(10,)数组
new_matrix[i,:] = array.reshape((1,10)) # 将数组reshape为(1,10)后添加到新矩阵中
# 打印新矩阵
print(new_matrix)
```
在这个示例代码中,我使用了numpy库中的zeros方法创建一个10*10的全0矩阵。然后使用for循环输出10个随机的(10,)数组,并将每个数组reshape为(1,10)的形式,然后将其添加到新矩阵中的相应位置。最后打印新矩阵的结果,如下:
```
[[0.87477535 0.60025271 0.78815543 0.46804495 0.83334829 0.25615369
0.32306013 0.54575576 0.63282079 0.91261662]
[0.01099125 0.10236693 0.27280228 0.23268274 0.34041352 0.99273059
0.71031809 0.28120532 0.99883817 0.6076405 ]
[0.03027403 0.31450572 0.24569916 0.13240211 0.06353768 0.20286925
0.68643512 0.10630839 0.35637498 0.51811253]
[0.49103865 0.67204222 0.7579061 0.81307948 0.5714414 0.34836115
0.13088049 0.36868718 0.82537434 0.11793536]
[0.9883215 0.05251761 0.84767983 0.70724047 0.34872116 0.14300234
0.18079022 0.11186828 0.12441387 0.39166525]
[0.94787553 0.31864873 0.84644273 0.93639021 0.25059111 0.609681
0.82624693 0.24987033 0.46625386 0.87799307]
[0.661926 0.80420235 0.88283449 0.89456389 0.0508496 0.67740908
0.95423387 0.62053768 0.39492211 0.92285344]
[0.2834183 0.64648297 0.91415451 0.33606958 0.02625075 0.12905873
0.22799445 0.72956043 0.50895534 0.69482262]
[0.15149076 0.29947867 0.70303045 0.18290712 0.46483154 0.99105892
0.87276443 0.86029998 0.58788236 0.61223276]
[0.10724679 0.58063905 0.98927808 0.61789938 0.73637771 0.61985734
0.53687515 0.67681188 0.88258958 0.52373696]]
```
可以看到,这个新矩阵中的每个元素都来自于随机生成的10个数组中的元素。
阅读全文