Video: Statistical Programming with R by Connor Harris 2025
Dacă lucrați cu factori în R care au valori numerice ca nivele, trebuie să fiți foarte atenți atunci când utilizați acești factori în modele și alte calcule. De exemplu, convertiți numărul de cilindri din setul de date încorporat mtcars la un factor de genul: >> cilindru. factor <- as. factor (mtcars $ cyl)
Dacă doriți să cunoașteți numărul mediu de cilindri, este posibil să fiți tentați să faceți următoarele:
Acest rezultat este fals, deoarece numărul minim de cilindri este de patru. R convertește reprezentarea internă a factorului la numere, nu la etichete. Deci, veți obține numere pornind de la unul la numărul de niveluri în loc de valorile inițiale.
Pentru a transforma corect un factor valorile numerice inițiale, mai întâi puteți transforma factorul în caracter și apoi la cifru. Dar pe date foarte mari, acest lucru se face mai rapid cu următoarea construcție:
Cu acest cod, creați un vector scurt cu nivelurile ca valori numerice și apoi utilizați reprezentarea integerului intern al factorului pentru a selecta valoarea corectă.
Deși R convertește adesea un vector numeric la un factor automat atunci când este necesar, el nu face acest lucru dacă se pot utiliza atât vectori numerici cât și factori numerici. Dacă doriți să modelați, de exemplu, kilometrajul unui automobil cu numărul de butelii, obțineți un model diferit atunci când utilizați numărul de butelii ca vector numeric sau ca factor.Interpretarea ambelor modele este complet diferită și multe depind de exact ce vreți să faceți. Dar trebuie să fiți conștienți de acest lucru sau să interpretați modelul greșit.