Gå till index

Analys och forskning med R

0% färdig
0/0 Steps
  1. Analys och forskning med R och Posit (Rstudio)
  2. Grunderna i R och Rstudio
    7 Ämnen
  3. Importera, exportera, spara och ladda data
    5 Ämnen
  4. Strängar och regular expressions (regex)
    1 Ämne
  5. Bearbetning av data med dplyr
    12 Ämnen
  6. Visualisera och presentera
    14 Ämnen
  7. Explorerande och deskriptiva analyser
    6 Ämnen
  8. Prediktionsmodeller
    12 Ämnen
  9. Klassisk regressionsanalys
    8 Ämnen
  10. Machine learning (ML) och Artificiell Intelligens (AI)
    9 Ämnen
  11. Skapa prediktionsmodeller med Tidymodels
    6 Ämnen
  12. Hypotestester och epidemiologiska mått
    5 Ämnen
Avsnitt Progress
0% färdig

Funktionerna rename() och rename_with() används för att ändra namnet på variabler. Med rename() ändras namn på enskilda variabler och rename_with() ändras namnen med hjälp av funktioner. Dessa funktioner påverkar endast namnet på kolumner (variabler). Ordningen på kolumnerna påverkas inte.

I detta kapitel arbetar vi med data som vi generar direkt i R, med följande kommando:

R
my_data <- tibble(Var1 = c(NA, 5, 9, 5, 3, 4),
                  Var2 = c(1, NA, 3, 6, 1, 12),
                  Var3 = c("Ja", "Nej", NA, "Ja", "Ja", "Ja"),
                  Var4 = rnorm(6), # genererar 6 slumpvärden med normalfördelning
                  Var5 = letters[1:6]) # första 6 bokstäverna i alfabetet
my_data
Resultat
   Var1  Var2 Var3    Var4 Var5 
     NA     1 Ja    -1.13  a    
      5    NA Nej   -0.144 b    
      9     3 NA    -0.114 c    
      5     6 Ja    -0.343 d    
      3     1 Ja    -1.08  e    
      4    12 Ja     0.914 f  

Vi döper om Var1 och Var2 till Variabel1 respektive Variabel2. Notera att det nya variabelnamnet specificeras först, följt av likhetstecken och det gamla variabelnamnet.

R
my_data |>
  rename(Variabel1=Var1,
         Variabel2=Var2)
Resultat
  Variabel1 Variabel2 Var3    Var4 Var5 
         NA         1 Ja    -1.13  a    
          5        NA Nej   -0.144 b    
          9         3 NA    -0.114 c    
          5         6 Ja    -0.343 d    
          3         1 Ja    -1.08  e    
          4        12 Ja     0.914 f   

Med rename_with() kan vi tillämpa en funktion på variabelnamnen. I nästa exempel ger vi alla variabelnamn versaler med funktionen toupper():

R
my_data |>
  rename_with(toupper)
Resultat
   VAR1  VAR2 VAR3    VAR4 VAR5 
     NA     1 Ja    -1.13  a    
      5    NA Nej   -0.144 b    
      9     3 NA    -0.114 c    
      5     6 Ja    -0.343 d    
      3     1 Ja    -1.08  e    
      4    12 Ja     0.914 f

Med tolower() gör du om namnen till gemener istället.

Du kan rikta rename_with() mot specifika kolumner med hjälp av tidy-select. I nästa exempel konverterar vi alla variabelnamn till versaler om variabelnamnet innehåller siffran 4:

R
my_data |>
  rename_with(toupper, contains("4"))
Resultat
   Var1  Var2 Var3    VAR4 Var5 
     NA     1 Ja    -1.13  a    
      5    NA Nej   -0.144 b    
      9     3 NA    -0.114 c    
      5     6 Ja    -0.343 d    
      3     1 Ja    -1.08  e    
      4    12 Ja     0.914 f

De andra tidy-select funktionerna diskuterades i kapitlet dplyr select().

Ändra variabelnamn med baser R

Det finns många användbara funktioner i baser R för att ändra variabelnamn. Varje dataframe har ett attribut kallat colnames, som innehåller variabelnamnen. Du kan skriva ut colnames med följande kommando:

R
colnames(my_data)
Resultat
"Var1" "Var2" "Var3" "Var4" "Var5"

Det innebär att variabelnamnen skrivs ut som en textvektor, vilken vi kan manipulera efter tycke och smak. Vi kan exempelvis lägga till prefixet "ny_" på varje variabelnamn, med följande kommando:

R
# Följande exempel är identiska
colnames(my_data) <- paste0("ny_", colnames(my_data))
my_data
Resultat
  ny_Var1 ny_Var2 ny_Var3 ny_Var4 ny_Var5
       NA       1 Ja      -0.573  a      
        5      NA Nej     -0.471  b      
        9       3 NA      -0.139  c      
        5       6 Ja       0.0464 d      
        3       1 Ja       1.07   e      
        4      12 Ja      -1.85   f   

Vi kan ersätta en textsträng i alla variabelnamn. Här ersätter vi "Var" med "Variabel_":

R
colnames(my_data) <- str_replace(names(my_data), "Var", "Variabel_")
my_data
Resultat
  Variabel_1 Variabel_2 Variabel_3 Variabel_4 Variabel_5
          NA          1 Ja              0.598 a         
           5         NA Nej            -0.348 b         
           9          3 NA              1.09  c         
           5          6 Ja             -0.237 d         
           3          1 Ja              1.08  e         
           4         12 Ja             -1.74  f         

Logga in för att läsa

Som medlem har du tillgång till allt nuvarande och kommande utbildningsmaterial. Du kan följa din utveckling och få intyg på avklarade moment.