Pertanyaan ini merupakan hasil dari MatLab (atau bahasa lainnya) untuk mengonversi matriks atau csv untuk meletakkan nilai kolom ke-2 ke baris yang sama jika nilai kolom ke-1 sama?
If
A = [2 3 234 ; 2 44 33; 2 12 22; 3 123 99; 3 1232 45; 5 224 57]
kolom 1 | kolom ke-2 | kolom ke-3
2 3 234
2 44 33
2 12 22
3 123 99
3 1232 45
5 224 57
lalu berlari
[U ix iu] = unique(A(:,1) );
r= accumarray( iu, A(:,2:3), [], @(x) {x'} )
akan menunjukkan kesalahannya kepada saya
Error using accumarray
Second input VAL must be a vector with one element for each row in SUBS, or a
scalar.
saya ingin membuat
kolom pertama | kolom ke-2 | kolom ke-3 | kolom ke-4 | kolom ke-5 | kolom ke-6| kol ke-7
2 3 234 44 33 12 22
3 123 99 1232 45
5 224 57
Saya tahu bagaimana melakukannya menggunakan for dan if, tapi itu menghabiskan terlalu banyak waktu untuk data besar.
Bagaimana saya bisa melakukan ini?
Terima kasih sebelumnya!