Pudiera darse el caso de que encuentres algún fallo en tu código o trabajo, recuerda probar siempre en un ambiente de testing antes subir el código al proyecto final.
Solución:
Aquí is.num
es TRUE
para columnas numéricas y FALSE
de lo contrario. Luego aplicamos round
a las columnas numéricas:
is.num <- sapply(DF, is.numeric)
DF[is.num] <- lapply(DF[is.num], round, 8)
Si lo que quería decir no era que necesita cambiar el marco de datos sino que desea mostrar el marco de datos en 8 dígitos, entonces es solo:
print(DF, digits = 8)
En dplyr 1.0.0 y posteriores se puede usar across
dentro de mutate
como esto:
library(dplyr)
DF %>% mutate(across(is.numeric, ~ round(., 8)))
A dplyr
solución usando mutate_if
para verificar si las columnas en el marco de datos actual son numeric
luego aplicar el round()
función para ellos
# install.packages('dplyr', dependencies = TRUE)
library(dplyr)
DF %>%
mutate_if(is.numeric, round, digits = 8)
#> NE001358.Log.R.Ratio
#> 1 -0.09703693
#> 2 0.13189355
#> 3 0.06292665
#> 4 0.29955913
#> 5 -0.01288043
#> 6 0.06397440
#> 7 0.02716694
#> 8 0.32239536
#> 9 0.17959129
### dplyr v1.0.0+
DF %>%
mutate(across(where(is.numeric), ~ round(., digits = 8)))
#> NE001358.Log.R.Ratio
#> 1 -0.097037
#> 2 0.131894
#> 3 0.062927
#> 4 0.299559
#> 5 -0.012880
#> 6 0.063974
#> 7 0.027167
#> 8 0.322395
#> 9 0.179591
Creado el 2019-03-17 por el paquete reprex (v0.2.1.9000)
¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)