2017-09-26 3 views

Répondre

0

caractères scandinaves exigent parfois un codage spécial, à savoir # ISO-8859-1 - Latin 1. Voici les commandes utiles en ce qui concerne le codage (qui diffère pour chaque calcul/OS)

#Check what is your present encoding: 
getOption("encoding") 
#Modifiy the encoding 
options(encoding = "ISO-8859-1") 

#Optional: Check your system locale (Time, Monetary System, etc) 
Sys.getlocale() 
#Set an encoding, but it is OS-dependent what is installed 
Sys.setlocale("LC_ALL", locale ="swe") 

De la documentation readr: " Codage par défaut Cela n'affecte que la lecture du fichier - readr convertit toujours la sortie en UTF-8. " Avec read_fwf il semble que vous pouvez spécifier un lieu/encodage:

read_fwf(file, col_positions, col_types = NULL, locale = default_locale(), 
na = c("", "NA"), comment = "", skip = 0, n_max = Inf, 
guess_max = min(n_max, 1000), progress = show_progress()) 

Remplacer default_locale() avec locale(encoding= "latin1"). Votre exemple n'est pas reproductible, il est donc difficile de tester si cela fonctionne, mais cela devrait ressembler à:

my.data<- read_fwf('my.file', fwf_widths (c(2,2,2,8,2,4,40,1,1,10,10,4,2,11,32,1,4)), locale= locale(encoding= "latin1"), 
progress = interactive())