python中的数据结构是通过ndarray来实现的,类似于matlab中的matrix。对矩阵进行的有很多种,常用的有转置(transposition)和改造(reshape)。转置就是把原来的行列互换,而改造则是把矩阵的长宽变成另外一对数值。演示代码如下:
import numpy as np
data = np.arange(10)
t_data = data.T
rs_data = data.reshape((2,5))
trs_data = rs_data.T
print(data)
print(t_data)
print(rs_data)
print(trs_data)
运行之后得到以下结果:
[0 1 2 3 4 5 6 7 8 9]
[0 1 2 3 4 5 6 7 8 9]
[[0 1 2 3 4]
[5 6 7 8 9]]
[[0 5]
[1 6]
[2 7]
[3 8]
[4 9]]
[Finished in 2.2s]
特别要注意的是,我们发现对于一位数组,是用行向量来表示的,这个有点和数学上的约定相反,我们知道,在数学上,我们谈论向量的时候,默认是用的列向量。但是没有办法,毕竟计算机和数学还是两门不同的学科,我们都得按照江湖规矩来办。