Διαβάστε αυτόν τον οδηγό εάν θέλετε να καταργήσετε Τιμές NaN από μια μήτρα στο MATLAB.
Μέθοδοι για την αφαίρεση τιμών NaN από έναν πίνακα στο MATLAB
Μπορείτε να αφαιρέσετε τις τιμές NAN από τη μήτρα στο MATLAB:
Μέθοδος 1: Αφαιρέστε τις τιμές NaN από έναν πίνακα στο MATLAB χρησιμοποιώντας τη συνάρτηση rmmissing()
ο rmmissing() είναι μια ενσωματωμένη λειτουργία στο MATLAB που μπορείτε να χρησιμοποιήσετε για να αφαιρέσετε εύκολα Τιμές NaN από έναν πίνακα στον κώδικα MATLAB σας. Αυτή η συνάρτηση παίρνει έναν πίνακα ως είσοδο και επιστρέφει έναν νέο πίνακα που δεν περιλαμβάνει το Τιμές NaN .
Σύνταξη
ο rmmissing() Η συνάρτηση ακολουθεί μια απλή σύνταξη στο MATLAB όπως δίνεται παρακάτω:
παραλείποντας ( Μ )
Οπου Μ είναι ένας πίνακας που έχει το Τιμές NaN .
Παράδειγμα
Το ακόλουθο παράδειγμα δείχνει τη χρήση του rmmissing() λειτουργία στην αφαίρεση του Τιμές NaN από μια μήτρα που καθορίζεται από το χρήστη.
B = rm missing ( ΕΝΑ ) ;
διαθ ( σι ) ;
Μέθοδος 2: Αφαιρέστε τις τιμές NaN από έναν πίνακα στο MATLAB χρησιμοποιώντας τη συνάρτηση isnan()
Μπορείτε επίσης να χρησιμοποιήσετε το isnan() λειτουργούν στον κώδικα MATLAB για κατάργηση NaN τιμές από τον πίνακα σας. Χρησιμοποιεί το ίδιο όρισμα που είναι ένας πίνακας από τον οποίο θέλετε να αφαιρέσετε το NaN αξίες. Ωστόσο, αντί να δίνει τιμές, αυτή η συνάρτηση παρέχει τις λογικές τιμές, δηλαδή θα δείτε ένα λογικό 1 εάν υπάρχει Τιμή NaN στον πίνακα ενώ ένα λογικό 0 αν δεν υπάρχει Τιμή NaN στη μήτρα.
Σύνταξη
Η σύνταξη προς χρήση isnan() Η λειτουργία στο MATLAB δίνεται παρακάτω:
Εδώ, Μ είναι η μήτρα από την οποία θέλετε να αφαιρέσετε NaN αξίες.
Παράδειγμα
Το παράδειγμα που δίνεται παρακάτω είναι παρόμοιο με αυτό που παρέχεται ήδη για το rmmissing() λειτουργία. Ωστόσο, αντί για rmmissing() , θα το χρησιμοποιησουμε isnan() λειτουργία για αφαίρεση Τιμές NaN από τον κωδικό. Επιπλέον, θα δημιουργήσουμε επίσης έναν άλλο πίνακα που θα αποθηκεύει τις τιμές ενός πίνακα που δεν περιλαμβάνει τιμές NaN.
ΕΝΑ = [ 6 9 8 NaN NaN 9 2 7 ] ;Β = ισνάν ( ΕΝΑ ) ;
διαθ ( σι )
ντο = Α ( ~ Β )
συμπέρασμα
ο Τιμές NaN σας δυσκολεύουν να λάβετε το αποτέλεσμα στον κώδικα MATLAB σας. Μπορείτε να τα αφαιρέσετε στον κώδικά σας χρησιμοποιώντας το rmmissing() ή isnan() λειτουργία. Η χρήση του rmmissing() είναι απλό καθώς δίνει το αποτέλεσμα αμέσως. Ωστόσο, για την περίπτωση του isnan() , θα δείτε τις λογικές τιμές και για να πάρετε τον επιθυμητό πίνακα, πρέπει να πάρετε τα στοιχεία από τον πίνακα που δεν είναι NaN . Αυτός ο παραπάνω οδηγός παρέχει και τις δύο αυτές μεθόδους για την αφαίρεση του Τιμές NaN από το matrix του MATLAB και μπορείτε να επιλέξετε αυτό που σας ταιριάζει καλύτερα.