Estou tentando converter bases csv para xlsx e também alterar o separador decimal de ponto para vírgula. Em uma das bases, de mais de 300.000 registros, o arquivo resultante do código abaixo, entretanto, não é um xlsx e os numeros continuam tendo o ponto como separador decimal. Mesmo abrindo o arquivo final do código e usando o comando “Salvar Como” no Excel, o separador decimal continua sendo o ponto.
Gostaria de saber se o código abaixo está correto para estes dois objetivos citados:
library(tidyverse)
library(readxl)
getwd()
#SVTOL01
#Lendo csv
svtol01_csv <- read.csv(file = "SVTOL01_Reduzida.csv")
#convertendo de csv para xlsx
writexl::write_xlsx(svtol01_csv, path = "SVTOL01_Reduzida_excel.xlsx")
#lendo xlsx e corrigindo os tipos de dados das colunas
svtol01_xlsx <- read_excel("SVTOL01_Reduzida_Excel.xlsx",
na = c("", "NAN", "NaN", "NT"),
col_types =
c("guess", "guess", "guess", "numeric","numeric","numeric","numeric","numeric","numeric","numeric",
"numeric", "numeric","numeric","numeric","numeric","numeric","numeric","numeric","numeric","numeric",
"numeric","numeric","numeric","numeric","numeric","numeric","numeric","numeric"))
warnings()
#salvando o xlsx com os tipos de dados corrigidos
writexl::write_xlsx(svtol01_xlsx, path = "SVTOL01_Reduzida_Excel_Corrigida.xlsx")
Link para acessar a base de exemplo:
https://drive.google.com/drive/folders/1pIkRgdemm8-xFDkStHqU-fmDQMT1thS-?usp=sharing