Search code examples
rlistlowercase

R Convert list to lowercase


Var1 is a list:

var1 <- list(c("Parts of a Day", "Time in Astronomy", "Star"),  c("Tree Tall", "Pine Tree"))

How to convert all the characters to lowercase? The desired answer is the following list:

var1 <- list(c("parts of a day", "time in astronomy", "star"),  c("tree tall", "pine tree"))

I used

as.list(tolower(var1))

But it gives the following answer with unwanted \

[[1]]
[1] "c(\"parts of a day\", \"time in astronomy\", \"star\")"

[[2]]
[1] "c(\"tree tall\", \"pine tree\")"

Thanks.


Solution

  • You should use lapply to lower case each character vector in your list

    lapply(var1, tolower)
    
    # [[1]]
    # [1] "parts of a day"    "time in astronomy" "star"             
    # 
    # [[2]]
    # [1] "tree tall" "pine tree"
    

    otherwise tolower does as.character() on your entire list which is not what you want.