Innholdsfortegnelse:
- Hvordan R definerer uendelig
- Ikke et nummer.
- Hvis du vil teste om en verdi er NA, kan du bruke isen. na () -funksjonen, som følger: >> er. na (x) [1] SANT
Video: Section 2 2024
Heldigvis kan R takle dataforstyrrelser som forstyrrer noen andre statistiske plattformer. For eksempel, i noen tilfeller har du ikke reelle verdier å beregne med. I de fleste virkelige datasettene mangler faktisk minst noen verdier. Også noen beregninger har uendelighet som et resultat (slik som dividering med null) eller kan ikke gjennomføres i det hele tatt (for eksempel å ta logaritmen av en negativ verdi).
Hvordan R definerer uendelig
For å begynne å utforske uendelig i R, se hva som skjer når du prøver å dele med null: >> 2/0 [1] Inf
R forteller deg om resultatet er Inf, eller uendelig. Negativ uendelighet er vist som -Inf. Du kan bruke Inf akkurat som du bruker et ekte tall i beregninger: >> 4 - Inf [1] -Inf
For å sjekke om en verdi er endelig, bruk funksjonene er. endelig () og er. uendelig (). Den første funksjonen returnerer TRUE hvis nummeret er endelig; den andre returnerer TRUE hvis nummeret er uendelig.
R ser alt som er større enn det største antallet en datamaskin kan holde for å være uendelig - på de fleste maskiner, det er omtrent 1. 8 × 10
308. Denne definisjonen av uendelig kan føre til uventede resultater, som vist i følgende eksempel: >> er. endelig (10 ^ (305: 310)) [1] SANT SANT SANT SANT FALSK FALSK Hva betyr denne linjen med kode nå? Se om du forstår hekker og vektorisering i dette eksemplet. Hvis du bryter opp linjen fra de indre parentesene, blir det forståelig:
Du vet allerede at 305: 310 gir deg en vektor som inneholder heltallene fra 305 til 310.
Alle operatørene er vektorisert, så 10 ^ (305: 310) gir deg en vektor med Resultatene fra 10 til kraften 305, 306, 307, 308, 309 og 310.
Den vektoren er gitt som argument for is. avgrenset(). Den funksjonen forteller deg at de to siste resultatene - 10 ^ 308 og 10 ^ 309 - er uendelige for R.-
Hvordan R behandler udefinerte resultater
-
Din matte lærer forklarte sannsynligvis at hvis du deler et ekte tall ved uendelig, du får null. Men hva om du deler uendelig med uendelig? >> Inf / Inf [1] NaN
-
Vel, R forteller deg at utfallet er NaN. Resultatet betyr bare
Ikke et nummer.
Dette er Rs måte å fortelle deg at utfallet av denne beregningen ikke er definert.
Det morsomme er at R faktisk anser NaN å være numerisk, slik at du kan bruke NaN i beregninger. Resultatet av disse beregningene er alltid NaN, men som du ser her: >> NaN + 4 [1] NaN
Du kan teste om en beregning resulterer i NaN ved å bruke isen.nan () -funksjonen. Merk at begge er. endelig () og er. uendelig () returnere FALSE når du tester på en NaN-verdi. Hvordan R håndterer manglende verdier Et av de vanligste problemene i statistikk er ufullstendige datasett. For å håndtere manglende verdier bruker R det reserverte søkeordet NA, som står for
Ikke tilgjengelig.
Du kan bruke NA som en gyldig verdi, så du kan også tildele den som en verdi: >> x <- nA
Du må imidlertid ta hensyn til beregningene med en verdi på NA returnerer også generelt NA som følger: >> x + 4 [1] NA> log (x) [1] NA
Hvis du vil teste om en verdi er NA, kan du bruke isen. na () -funksjonen, som følger: >> er. na (x) [1] SANT
Merk at det er. na () -funksjonen returnerer også TRUE hvis verdien er NaN. Funksjonene er. endelig (), er. uendelig (), og er. nan () returnerer FALSE for NA-verdier. Funksjon Inf
-Inf
NaN
NA
er. finite ()
FALSE
FALSE
FALSE | FALSE | er. uendelig () | true | true |
---|---|---|---|---|
FALSE | FALSE | er. nan () | FALSE | FALSE |
true | FALSE | er. na () | FALSE | FALSE |
true | true |
|