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

Jak usunąć wiersz z macierzy?
Forum MATLAB Strona Główna-> MATLAB
Post Wysłany: 30 Sierpnia 2017, Sro 5:01 pm Temat postu: Jak usunąć wiersz z macierzy? Odpowiedz z cytatem
 
AUTOR:
plaziok



Dołączył: 30 Sie 2017
Posty: 2


Ogląda profil użytkownika Wyślij prywatną wiadomość
Witam,
Mam problem z usunięciem wierszy z macierzy. Wiem że mogę użyć poniższej komendy do usunięcia wierszy zawierających wartości inne niż 0 w kolumnie 6.

Kod:
W(find(W(:,6)~=0),:)


Ja jednak chciałbym usunąć wszystkie wiersze, które w 6 kolumnie mają pierwszą liczbę po przecinku różną od zera (np. XX,1XXX).

Jak to zrobić?


 

Post Wysłany: 30 Sierpnia 2017, Sro 6:44 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
alhambra
Może pisać książki


Dołączył: 05 Sie 2008
Posty: 715


Ogląda profil użytkownika Wyślij prywatną wiadomość
pomysł niesprawdzony i może trochę długi

1. kopiujemy macierz
2. mnożymy ją przez 10 - wtedy pierwsza cyfra po przecinku stanie się cyfra jedności
3. zaokrąglamy liczby w macierzy - pozbywamy się liczb po przecinku
4. wyszukujemy w 6-tej kolumnie wierszy gdzie dana liczba posiada cyfrę jedności różną od zero (np zamiana liczby na string num2str i sprawdzenie ostatniego znaku czy "0"
5. mając wyszukane miejsca w pkt 4 wykorzystujemy do wykasowania odpowiednich wierszy w pierwotnej macierzy



_________________
Korepetycje z Matlaba, pomoc ....
 

Post Wysłany: 30 Sierpnia 2017, Sro 7:36 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
plaziok



Dołączył: 30 Sie 2017
Posty: 2


Ogląda profil użytkownika Wyślij prywatną wiadomość
Pomysł dobry ale problem już rozwiązany przez mojego kumpla.

Dla potomnych:

Kod:
logical = floor((W(:,6) - floor(W(:,6))) * 10) == 0
result
= W(logical,:)


 

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 39946191
Najwięcej użytkowników 266 było obecnych 19 Lutego 2015, Czw 7:03 pm

Aktualnie online:




Najnowsze posty na forum:
18 stka brata...  (16 Grudnia 2017, Sob 11:00 pm)
w jakim wieku braliście ślub?  (16 Grudnia 2017, Sob 11:00 pm)
Ulubiony napĂłj  (16 Grudnia 2017, Sob 10:59 pm)
Dobry krem na zimę  (16 Grudnia 2017, Sob 10:58 pm)
Gdzie jechać na wakacje?  (16 Grudnia 2017, Sob 10:51 pm)
Prezent dla koleĹźanki  (16 Grudnia 2017, Sob 10:50 pm)
Co kupić cioci na 50stkę?  (16 Grudnia 2017, Sob 10:50 pm)
Once Upon a Time (Dawno, Dawno Temu) S07E10 online napisy PL  (15 Grudnia 2017, Pią 12:07 am)
Blindspot: Mapa zbrodni S03E07 online PL napisy 3x07 CDA  (15 Grudnia 2017, Pią 12:05 am)
Agenci T.A.R.C.Z.Y. S05E04 online PL napisy 5x04 CDA Zalukaj  (15 Grudnia 2017, Pią 12:03 am)
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