2012-09-09 63 views
0

我有以下代碼如何將2d數組放入numpy中?

a_alpha_beta = zeros((2, len(atime))) 

for i in range(len(atime)):   
     alpha_beta = transf.clarke(signal[0][i], signal[1][i], signal[2][i]) 
     a_alpha_beta[0][i] = alpha_beta[0][0] 
     a_alpha_beta[1][i] = alpha_beta[1][0] 

如何優化上面的代碼,比如我怎麼能複製alpha_betaa_alpha_beta

+0

其實,我可能誤解了你的問題。你的意思是你想創建一個2D數組的二維數組嗎?由於不清楚trans.clarke返回的是什麼,你能更清楚地瞭解你正在處理的那些數組的形狀嗎? –

回答

1

我不知道究竟該功能transf.clarke做什麼,但複製,你的願望可以做如下操作:

import numpy as np 

# generate a test input 
x = np.arange(0, 10).reshape((2, 5)) 
print x 

# simply copy 2d array 
y = x.copy() 
print y 

# some new data (i.e., alpha_beta in the original code) 
z = np.array([[10, 11, 12], 
       [13, 14, 15]]) 
print z 

# replace the iteration by numpy slicing to obtain the same result 
x[0, :] = z[0, 0] 
x[1, :] = z[1, 0] 
print x