У меня есть список фреймов данных, где некоторые столбцы нуждаются в указании их правильной кодировки.Итак, я создал функцию для установки правильной кодировки, и я хотел бы применить эту новую функцию к определенным столбцам в моем списке данных.Как я могу сделать это с purrr:map
?Я очень новичок в этом.
Пустой пример
# Set slovak characters
Sys.setlocale(category = "LC_ALL", locale = "Slovak")
# Make a function
setEncoding<- function(x, ...) {
Encoding(x)<-"UTF-8" # set correct encoding on the vector
x # print the output
}
# Create dummy data with wrong encoding
df1<-data.frame(name = "Ľubietovský Vepor",
psb = "S CHKO PoÄľana",
numb = 1)
df2<-data.frame(name = "Goliašová",
psb = "S TANAP",
numb = 2)
list1<-list(df1, df2)
My function seems working if applied on vector string:
>setEncoding(c("Ľubietovský Vepor", "Goliašová" ))
[1] "Ľubietovský Vepor" "Goliašová"
# How to apply the whatever function (here setEncoding) on the selected columns from a dataframe list??
list1 %>%
map(setEncoding[c("name", "psb")]) # How to fix this?
Что я хочу получить (правильное кодирование столбцов name
, psb
):
> ls
[[1]]
name psb numb
1 Ľubietovský Vepor S CHKO Poľana 1
[[2]]
name psb numb
1 Goliášová S TANAP 2