Inhoud
De nulwaarden in uw MATLAB-array (scientific computing software) kunnen het analyseren van uw gegevens bemoeilijken. Statistieken of signaalverwerking kunnen onzinnige resultaten genereren en grafische afbeeldingen kunnen lastig te lezen zijn wanneer nulwaarden worden weergegeven. Extraheren - verwijder ze uit uw array - stelt u in staat te werken met nuttige gegevens om zinvolle resultaten te bereiken.
routebeschrijving
Door null-waarden te extraheren, kunt u nuttige grafieken van uw gegevens maken (Thinkstock / Comstock / Getty Images)-
Kopieer je originele array naar een andere variabele. Als u de array moet gebruiken zoals deze was voordat u de nullen wist, kunt u deze nieuwe variabele gebruiken.
Als de array M wordt genoemd, wijst u deze bijvoorbeeld een nieuwe variabele toe met de naam Mzeros. Typ hiervoor "Mzeros = M" (zonder de aanhalingstekens) op de opdrachtregel "MATLAB".
-
Sla de oorspronkelijke array op in een tekstbestand als u het later nodig hebt met de "dlmwrite" -functie van "MATLAB". Als de variabele opslag per ongeluk wordt verwijderd of herschreven, kunt u de oorspronkelijke gegevens uit het tekstbestand opnieuw laden.
Als de oorspronkelijke array bijvoorbeeld in de variabele Mzeros is opgeslagen, typt u "dlmwrite ('Mzeros.dat', Mzeros)" om naar Mzeros te schrijven in een tekstbestand met de naam Mzeros.dat.
U kunt deze stap overslaan als uw gegevens al in een tekstbestand zijn opgeslagen.
-
Bepaal of u uw array in dezelfde grootte en indeling wilt houden. Houd het zo als de rijen en kolommen een specifieke betekenis hebben (elke rij vertegenwoordigt bijvoorbeeld een andere experimentele test en elke kolom vertegenwoordigt een andere hoeveelheid meetwaarde). Om dezelfde grootte en indeling te behouden, vervangt u elke nulwaarde door een NaN-waarde (die staat voor "geen getal").
Als u de nulwaarden wilt vervangen door NaN in een array met de naam M, voert u "M (M == 0) = NaN" in. Zorg ervoor dat u M == 0 invoert met twee gelijke tekens. Deze opdracht zal het "MATLAB" vertellen om alle elementen van M gelijk aan nul te vinden en ze te vervangen door NaN.
Alles in de array blijft in dezelfde positie (dezelfde rij en kolom), maar alle nullen zijn nu NaN. Aangezien de meeste "MATLAB" -functies de NaN-waarden negeren, kunt u gegevens in diagrammen plaatsen en deze analyseren, zelfs als de NaN's er niet zijn, waardoor significante resultaten worden behaald.
-
U kunt de nulelementen volledig verwijderen (in plaats van ze te vervangen door NaN-waarden) als de reeks een eenvoudige lijst met waarden is, zonder significante rijen en kolommen. Om de null-elementen in de array met de naam M te verwijderen, typt u "M (M == 0) = []" (zonder de aanhalingstekens). Zorg ervoor dat u M == 0 invoert met twee gelijke tekens. Deze opdracht geeft het "MATLAB" de opdracht om alle elementen gelijk aan nul te vinden en ze te vervangen door []. De [] staat voor "leeg". Als u een waarde vervangt door [], wordt het element verwijderd.
Als M een tweedimensionale matrix is, wordt het nu een kolomvector die alle niet-nulelementen van de oorspronkelijke M bevat, in de kolomzin. Als M bijvoorbeeld een array van twee rijen en twee kolommen was:
[1 6 0 3 2 0 7 4]
nu zal het zijn
[1 2 6 7 3 4]
Als M een vector is (alleen een rij of kolom), wordt het nu een korte vector. Als M bijvoorbeeld [1 2 0 3] was, wordt dit nu [1 2 3].
De array verandert in grootte en indeling wanneer u de nulelementen verwijdert. Maar als het geen NaN-waarde heeft, kunt u de gegevens zelfs analyseren met "MATLAB" -functies die deze waarden niet negeren.
waarschuwing
- Zorg ervoor dat nulwaarden niet echt betekenisvol zijn voordat u ze verwijdert. Als ze iets in uw gegevens betekenen, kan het verwijderen van deze gegevens u mogelijk onjuiste en beschadigde resultaten opleveren.
- Als uw array te groot is, kan het kopiëren naar een andere variabele veel geheugen vereisen, waardoor "MATLAB" langzaam en onrustig blijft. Zorg ervoor dat het in één tekstbestand is opgeslagen en kopieer het niet naar een andere variabele.
- Er zijn enkele functies die NaNs niet negeren en kunnen terugkeren met fouten of zinloze resultaten als u ze gebruikt. Raadpleeg de "MATLAB" -documentatie voor elke functie die u gebruikt bij uw gegevensanalyse.
Wat je nodig hebt
- Numerieke gegevens
- computer
- MATLAB