0
我有一個矩陣和一個向量,我想比較矩陣和向量的每一列 - 我想得到的是等於向量的列的數量。 實施例:Octave - 比較矩陣的列與矢量
matrix M=1 1 0 1
1 0 0 0
0 1 1 0
vector v= 1 0 1
結果應該是2(因爲M的第二列是等於向量v)
如何做呢?
我有一個矩陣和一個向量,我想比較矩陣和向量的每一列 - 我想得到的是等於向量的列的數量。 實施例:Octave - 比較矩陣的列與矢量
matrix M=1 1 0 1
1 0 0 0
0 1 1 0
vector v= 1 0 1
結果應該是2(因爲M的第二列是等於向量v)
如何做呢?
octave> M = [1 1 0 1; 1 0 0 0; 0 1 1 0];
octave> v = [1 0 1];
octave> sum(M == repmat(v', 1, 4))
ans =
1 3 2 2
octave> sum(M == repmat(v', 1, 4)) == size(M, 1)
ans =
0 1 0 0
octave> find(sum(M == repmat(v', 1, 4)) == size(M, 1))
ans = 2
使用廣播(bsxfun
),向向量與每個矩陣中的行的。然後find
哪一行是all
真正
find (all (bsxfun (@eq, m, v')))
之和(M == V')給我的nonconformat參數 – user1926550 2013-05-02 12:23:28
@ user1926550錯誤:作品在這裏很好。請發佈實際的錯誤消息。 – 2013-05-02 13:05:51
總和(M = = V')我收到後: 錯誤:mx_el_eq:nonconformat參數(OP1爲3×4,OP2是3X1) 錯誤:評估參數列表元素數1 錯誤:評估參數列表元素數1 – user1926550 2013-05-02 14:47:39