目前我正在从一个文本文件中提取测量数据的python脚本。我正在使用iPython笔记本和Python 2.7Python:当一个数组移位时,numpy数组是否被链接?
现在我遇到了一些奇怪的行为时使用numpy数组。我对此没有任何解释。
myArray = numpy.zeros((4,3))
myArrayTransposed = myArray.transpose()
for i in range(0,4):
for j in range(0,3):
myArray[i][j] = i+j
print myArray
print myArrayTransposed
导致:
[[ 0. 1. 2.]
[ 1. 2. 3.]
[ 2. 3. 4.]
[ 3. 4. 5.]]
[[ 0. 1. 2. 3.]
[ 1. 2. 3. 4.]
[ 2. 3. 4. 5.]]
因此,没有转置阵列上的工作,值这个数组中更新。
这怎么可能?
转不创建一个副本。它只是改变了读取相同数据的顺序。如果numpy文档没有提到这个,会很奇怪 – M4rtini
他们确实提到它[这里](http://docs.scipy.org/doc/numpy-1.10.0/reference/generated/numpy.ndarray.transpose.html) 。如果你想要一个真正的副本,返回值是对原始数组“ – Wombatz
'myArray.T.copy()”的“视图”。 '.T'是'.transpose()的简写'' – M4rtini