Indholdsfortegnelse:
- Hvordan R definerer uendeligt
- Ikke et nummer.
- Hvis du vil teste om en værdi er NA, kan du bruge isen. na () funktion, som følger: >> er. na (x) [1] SAND
Video: Differential Equations: Solutions (Level 1 of 4) | Interval of Definition, Solution Curves 2025
Heldigvis kan R behandle dataanomalier, der forstyrrer nogle andre statistiske platforme. For eksempel har du i nogle tilfælde ikke reelle værdier at beregne med. I de fleste virkelige datasæt mangler i virkeligheden i det mindste nogle få værdier. Endvidere har nogle beregninger uendelig som følge heraf (som f.eks. Opdeling med nul) eller kan slet ikke udføres (såsom at tage logaritmen af en negativ værdi).
Hvordan R definerer uendeligt
For at begynde at undersøge uendeligheden i R, se hvad der sker, når du forsøger at opdele med nul: >> 2/0 [1] Inf
R fortæller dig, at resultatet er Inf, eller uendelig. Negativ uendelighed er vist som -Inf. Du kan bruge Inf lige som du bruger et rigtigt tal i beregninger: >> 4 - Inf [1] -Inf
For at kontrollere, om en værdi er endelig, skal du bruge funktionerne. endelig () og er. uendelig (). Den første funktion returnerer TRUE, hvis nummeret er begrænset; den anden vender TRUE, hvis nummeret er uendeligt.
R betragter alt større end det største antal en computer kan holde for at være uendelig - på de fleste maskiner, der er ca. 1. 8 × 10
308. Denne definition af uendelighed kan føre til uventede resultater, som vist i følgende eksempel: >> er. endelig (10 ^ (305: 310)) [1] SAND SAND SAND SAND FALSK FALSK Hvad betyder denne linje med kode nu? Se om du forstår nestingen og vektoriseringen i dette eksempel. Hvis du bryder op linjen ud fra de indre parenteser, bliver det forståeligt:
Du ved allerede, at 305: 310 giver dig en vektor, der indeholder heltalene fra 305 til 310.
Alle operatører er vektoriseret, så 10 ^ (305: 310) giver dig en vektor med Resultaterne fra 10 til kraften 305, 306, 307, 308, 309 og 310.
Denne vektor er givet som et argument for is. begrænset(). Denne funktion fortæller dig, at de to sidste resultater - 10 ^ 308 og 10 ^ 309 - er uendelige for R.-
Hvordan R behandler udefinerede resultater
-
Din matematiklærer forklarede sandsynligvis, at hvis du deler et ægte tal ved uendelighed, du får nul. Men hvad nu hvis du deler uendelighed med uendelighed? >> Inf / Inf [1] NaN
-
Nå, R fortæller dig, at resultatet er NaN. Dette resultat betyder simpelthen
Ikke et nummer.
Dette er Rs måde at fortælle dig, at resultatet af denne beregning ikke er defineret.
Det sjove er, at R faktisk finder NaN at være numerisk, så du kan bruge NaN i beregninger. Resultatet af disse beregninger er imidlertid altid NaN, som du ser her: >> NaN + 4 [1] NaN
Du kan teste om en beregning resulterer i NaN ved at bruge isen.nan () funktion. Bemærk at begge er. endelig () og er. uendelig () returnere FALSE, når du tester på en NaN-værdi. Hvordan R håndterer manglende værdier Et af de mest almindelige problemer i statistikken er ufuldstændige datasæt. For at håndtere manglende værdier bruger R det reserverede søgeord NA, som står for
Ikke tilgængelig.
Du kan bruge NA som en gyldig værdi, så du kan også tildele det som en værdi: >> x <- nA
Du skal dog tage højde for, at beregningerne med en værdi af NA returnerer også generelt NA som følger: >> x + 4 [1] NA> log (x) [1] NA
Hvis du vil teste om en værdi er NA, kan du bruge isen. na () funktion, som følger: >> er. na (x) [1] SAND
Bemærk, at det er. na () -funktionen returnerer også TRUE, hvis værdien er NaN. Funktionerne er. endelig (), er. uendelig () og er. nan () returnerer FALSE for NA værdier. Funktion Inf
-Inf
NaN
NA
er. finite ()
FALSK
FALSK
FALSK | FALSK | er. uendelig () | SAND | SAND |
---|---|---|---|---|
FALSK | FALSK | er. nan () | FALSK | FALSK |
SAND | FALSK | er. na () | FALSK | FALSK |
SAND | SAND |
|