Els factors són una estructura de dades molt important en R, especialment útil per treballar amb dades categòriques. Els factors permeten representar dades qualitatives, com ara colors, gèneres, o categories de productes, de manera eficient i amb menys errors.
Conceptes Clau
- Definició de Factors: Els factors són vectors que emmagatzemen dades categòriques i poden tenir un nombre limitat de valors únics, anomenats nivells.
- Creació de Factors: Utilitzem la funció
factor()
per crear factors a partir de vectors. - Nivells de Factors: Els nivells són els valors únics que un factor pot prendre.
- Factors Ordenats: Els factors poden ser ordenats o no ordenats. Els factors ordenats tenen una relació d'ordre entre els seus nivells.
Creació de Factors
Exemple Bàsic
# Creació d'un vector de caràcters colors <- c("vermell", "blau", "verd", "blau", "vermell", "verd") # Convertir el vector de caràcters en un factor colors_factor <- factor(colors) # Mostrar el factor print(colors_factor)
Explicació:
- Hem creat un vector de caràcters anomenat
colors
. - Hem utilitzat la funció
factor()
per convertir aquest vector en un factor. - El resultat és un factor amb nivells "vermell", "blau" i "verd".
Especificar Nivells
# Especificar nivells en un ordre particular colors_factor <- factor(colors, levels = c("blau", "verd", "vermell")) # Mostrar el factor amb nivells especificats print(colors_factor)
Explicació:
- Hem especificat els nivells en un ordre particular utilitzant l'argument
levels
.
Factors Ordenats
# Creació d'un factor ordenat sizes <- c("petit", "gran", "mitjà", "gran", "petit") sizes_factor <- factor(sizes, levels = c("petit", "mitjà", "gran"), ordered = TRUE) # Mostrar el factor ordenat print(sizes_factor)
Explicació:
- Hem creat un factor ordenat utilitzant l'argument
ordered = TRUE
. - Els nivells estan ordenats de "petit" a "gran".
Operacions amb Factors
Canviar Nivells
# Canviar els nivells d'un factor levels(colors_factor) <- c("blau", "verd", "roig") # Mostrar el factor amb els nivells canviats print(colors_factor)
Explicació:
- Hem canviat el nivell "vermell" a "roig" utilitzant l'assignació directa a
levels()
.
Afegir Nivells
# Afegir un nou nivell a un factor colors_factor <- factor(colors_factor, levels = c("blau", "verd", "roig", "groc")) # Mostrar el factor amb el nou nivell afegit print(colors_factor)
Explicació:
- Hem afegit un nou nivell "groc" al factor utilitzant l'argument
levels
.
Exercicis Pràctics
Exercici 1: Creació de Factors
Enunciat:
Crea un factor a partir del següent vector de caràcters que representa diferents tipus de fruites: c("poma", "plàtan", "taronja", "poma", "taronja", "plàtan")
. Mostra el factor i els seus nivells.
Solució:
# Vector de caràcters fruites <- c("poma", "plàtan", "taronja", "poma", "taronja", "plàtan") # Convertir el vector en un factor fruites_factor <- factor(fruites) # Mostrar el factor i els seus nivells print(fruites_factor) print(levels(fruites_factor))
Exercici 2: Factors Ordenats
Enunciat:
Crea un factor ordenat a partir del següent vector de caràcters que representa diferents nivells d'educació: c("primària", "secundària", "universitat", "primària", "universitat")
. Els nivells han d'estar ordenats de "primària" a "universitat".
Solució:
# Vector de caràcters educacio <- c("primària", "secundària", "universitat", "primària", "universitat") # Convertir el vector en un factor ordenat educacio_factor <- factor(educacio, levels = c("primària", "secundària", "universitat"), ordered = TRUE) # Mostrar el factor ordenat print(educacio_factor)
Errors Comuns i Consells
- Oblidar especificar els nivells: Si no especifiques els nivells, R els ordenarà alfabèticament per defecte, cosa que pot no ser el que vols.
- No utilitzar factors ordenats quan cal: Si les dades tenen un ordre inherent (com ara "petit", "mitjà", "gran"), assegura't de crear factors ordenats.
- Canviar nivells incorrectament: Quan canvies els nivells, assegura't que els nous nivells tinguin el mateix nombre d'elements que els nivells originals.
Resum
En aquesta secció, hem après què són els factors, com crear-los, com especificar i canviar els seus nivells, i com treballar amb factors ordenats. Els factors són essencials per treballar amb dades categòriques en R, i comprendre'ls bé és fonamental per a l'anàlisi de dades eficient.
Programació en R: De Principiant a Avançat
Mòdul 1: Introducció a R
- Introducció a R i RStudio
- Sintaxi Bàsica de R
- Tipus de Dades i Estructures
- Operacions i Funcions Bàsiques
- Importació i Exportació de Dades
Mòdul 2: Manipulació de Dades
- Vectors i Llistes
- Matrius i Arrays
- Data Frames
- Factors
- Manipulació de Dades amb dplyr
- Manipulació de Cadenes
Mòdul 3: Visualització de Dades
- Introducció a la Visualització de Dades
- Gràfics Base de R
- Conceptes Bàsics de ggplot2
- ggplot2 Avançat
- Visualitzacions Interactives amb plotly
Mòdul 4: Anàlisi Estadística
- Estadístiques Descriptives
- Distribucions de Probabilitat
- Proves d'Hipòtesi
- Correlació i Regressió
- ANOVA i Proves de Chi-Cuadrat
Mòdul 5: Gestió Avançada de Dades
- Gestió de Dates i Hores
- Reestructuració de Dades
- Treballant amb Grans Conjunts de Dades
- Web Scraping
- APIs i JSON
Mòdul 6: Conceptes Avançats de Programació
- Escriure Funcions
- Depuració i Gestió d'Errors
- Programació Orientada a Objectes en R
- Programació Funcional
- Computació Paral·lela
Mòdul 7: Aprenentatge Automàtic amb R
- Introducció a l'Aprenentatge Automàtic
- Preprocessament de Dades
- Aprenentatge Supervisat
- Aprenentatge No Supervisat
- Avaluació i Ajust de Models
Mòdul 8: Temes Especialitzats
- Anàlisi de Sèries Temporals
- Anàlisi de Dades Espacials
- Mineria de Text i Processament del Llenguatge Natural
- Bioinformàtica amb R
- Anàlisi de Dades Financeres