MATLAB

2016-03-31 12 views
0

'daki tüm sütunları mantıksal olarak dizinleme Mantıksal bir sütun vektörü (boyut nx 1) v ve bir dizi a (boyut mxn) verildiği zaman, a dizesindeki tüm sütunlardan oluşan yeni bir dizi nasıl oluşturabilirim sütun (1 ... n), v'da karşılık gelen konumda 1'dir. (MATLAB

Böylece v

1 
0 
0 
1 

örneğin ise ve av birinci ve dördüncü elemanlar 1, çünkü yeni bir dizi

1 10 
2 11 
3 12 

olur

1 4 7 10 
2 5 8 11 
3 6 9 12 

oldu true), bu yüzden yeni dizi contai olmalı n, a'un birinci ve dördüncü sütunları.

Normal mantıksal indeksleme ve aktarımla ilgili bir sürü şeyi denedim ama işe yaramayacağım. Tüm yardımlar için minnettarız

cevap

2

Sütunları seçmek ve tüm satırları seçmek için mantıksal indekslemeyi kullanmak istersiniz. Aşağıdaki örnekte, 'un zaten mantıksal bir matris olmaması durumunda, v'u mantıklı olarak açık bir şekilde döküm ettim.

new = a(:, logical(v)) 

    1 10 
    2 11 
    3 12 
+0

Vay, tam olarak böyle bir şey denedim, ancak satır ve sütun bağımsız değişkenlerini değiştirdim ve açıkça işe yaramadı. Çok teşekkür ederim, bu mükemmel. – ubadub