Zaloguj się
Blog na Matlablog
Forum polskich użytkowników
 
UŻYTKOWNICY GRUPY PROFIL Zaloguj się, by sprawdzić wiadomości FAQ
 



Napisz nowy temat     Odpowiedz do tematu Zobacz poprzedni temat :: Zobacz następny temat

Zamiana macierzy komórkowej na zwyczajną macierz.
Forum MATLAB Strona Główna-> MATLAB
Post Wysłany: 17 Styczenia 2018, Sro 4:06 pm Temat postu: Zamiana macierzy komĂłrkowej na zwyczajną macierz. Odpowiedz z cytatem
 
AUTOR:
kapitan_melon



Dołączył: 17 Sty 2018
Posty: 2


Ogląda profil użytkownika Wyślij prywatną wiadomość
Hej. Mam macierz komórkową który zawiera stringi. Jest coś takiego:

A=
{
[1,1] = Ala
[2,1] = Ma
[3,1] Kota
}

I odwołując się do nich poprzez indeks w nawiasach klamrowych, to wychodzi tak jak trzeba, np A{2} = Ma.
I chciałbym Zrobić z tego zwyczajną tablicę:

B=[Ala
Ma
Kota].
Wiem że mógłbym to zrobić ręcznie:
B= [A{1};A{2};A{3}]
ale chodzi mi o to aby było niwersalne, nie tylko dla 3 pozycji. Próbowalem pętlami ale jakoś nie działa jak powinno... Pewnie na necie jest sporo rozwiązań, ale jakoś nie mogłem po długich poszukiwaniach znaleźć odpowiedniego.

Ktoś wie jak to ogarnąć?
Z góry dzięki!


 

Post Wysłany: 17 Styczenia 2018, Sro 9:08 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
mc2
Może pisać książki


Dołączył: 19 Maj 2009
Posty: 2261


Ogląda profil użytkownika Wyślij prywatną wiadomość Odwiedź stronę autora
Możesz zrobić to tak:
Kod:
B = char(A)

Musisz tylko pamiętać, że teraz do wyrazu 'ma' zostaną dopisane spacje:
Kod:
length(B(2,:))
ans 4
 

Post Wysłany: 18 Styczenia 2018, Czw 9:10 am Temat postu: Odpowiedz z cytatem
 
AUTOR:
kapitan_melon



Dołączył: 17 Sty 2018
Posty: 2


Ogląda profil użytkownika Wyślij prywatną wiadomość
Dzięki pomogło. Tylko że dlaczego traktuje mi to jako osobne znaki? W sensie jak daję length(B) = 4, to spoko. Ale jeżeli np wpisuję B(1) to ans=A, B(2)=k B(3)=m
itp. jak daję sort(B) to pojawia się:

Aa
kla
mota

Very Happy

a chciałbym żeby to była zwykła tablica ze stringami.
B(1)=Ala itp.


 

Post Wysłany: 18 Styczenia 2018, Czw 9:17 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
mc2
Może pisać książki


Dołączył: 19 Maj 2009
Posty: 2261


Ogląda profil użytkownika Wyślij prywatną wiadomość Odwiedź stronę autora
UĹźyj funckji sortrows:
https://www.mathworks.com/help/matlab/ref/sortrows.html

B jest macierzą znaków, jeśli chcesz używać tablicy ze stringami musisz korzystać z macierzy komórkowej.

https://www.mathworks.com/help/matlab/matlab_prog/cell-arrays-of-strings.html
 

Forum MATLAB Strona Główna-> MATLAB
Wyświetl posty z ostatnich:   

Napisz nowy temat     Odpowiedz do tematu Zobacz poprzedni temat :: Zobacz następny temat

Wszystkie czasy w strefie CET (Europa)

Skocz do:  

Statystyki forum:



Od dnia 08.06.2006 forum odwiedzano 45602270
Najwięcej użytkowników 266 było obecnych 19 Lutego 2015, Czw 7:03 pm

Aktualnie online:




Najnowsze posty na forum:
Ja, Godard 2017 Obejrzyj Cały Film Online Lektor PL  (23 Maj 2018, Sro 7:44 pm)
Wykres i widmo zerowej składowej  (23 Maj 2018, Sro 3:09 pm)
(s01e10) Nawiedzona panna młoda 1 Sezon 10 Odcinek Online  (22 Maj 2018, Wto 10:17 pm)
Nawiedzona panna młoda s01e09 transmisja na Ĺźywo  (22 Maj 2018, Wto 10:17 pm)
Nawiedzona panna młoda s01e09 gdzie obejrzeć online?  (22 Maj 2018, Wto 10:16 pm)
(s01e09) Nawiedzona panna młoda 1 Sezon 9 Odcinek Online  (22 Maj 2018, Wto 10:16 pm)
Nawiedzona panna młoda s01e08 gdzie obejrzeć online?  (22 Maj 2018, Wto 10:16 pm)
(s01e08) Nawiedzona panna młoda 1 Sezon 8 Odcinek Online  (22 Maj 2018, Wto 10:15 pm)
(s01e07) Nawiedzona panna młoda 1 Sezon 7 Odcinek Online  (22 Maj 2018, Wto 10:15 pm)
(s01e06) Nawiedzona panna młoda 1 Sezon 6 Odcinek Online  (22 Maj 2018, Wto 10:15 pm)
Twoje prawa:
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać plików na tym forum