現在我有一個0和1的numpy數組,我想對每兩列執行logical_and。 for循環應該是這樣的:如何在numpy數組的每兩列執行一個操作?
import numpy as np
result = []
data = [[0, 1, 1],
[1, 0, 1],
[1, 0, 1]]
np_data = np.array(data)
num_cols = len(np_data[1,:])
for i in range(0, num_cols):
for j in range(i+1, num_cols):
#Comparing every column with every other column
anded = np.logical_and(np_data[:,i], np_data[:,j])
result.append(anded)
print result
我只是想知道是否有一個numpy的,田間的方式來做到這一點,因爲很明顯的循環是不利於對numpy的數組操作。
這真的是你想要的'結果'的形式嗎?你將需要一些小代碼來找出i,j在結果中的位置。 – 2012-02-26 09:33:35