Reemplace Inf con NA en Dataframe en R

En este artículo, discutiremos cómo reemplazar Inf (Infinito) con NA en Dataframe en lenguaje de programación R.

Cree un marco de datos con para demostración:

R

# create a dataframe with 3 columns and 5 rows
data=data.frame(column1 = c(Inf, 2, 3, 4, 5), 
                column2 = c(1, Inf, 1, Inf, 1),
                column3 = c(1,2,3,Inf,Inf))
 
# display dataframe
print(data)

Producción:

Entonces podemos reemplazar Inf con NA usando la función lapply() , tenemos que crear nuestra propia función para reemplazar Inf con NA y luego pasar esa función a lapply() a través del método do.call.

Sintaxis de la función:

function(value) 
replace(value, is.infinite(value), 
NA)

Donde value es el valor de entrada y replace() se usa para reemplazar el valor a NA si es infinito.

Ejemplo 1: programa R para reemplazar el valor Inf con NA en el marco de datos

R

# create a dataframe with 3 columns and 5 rows
data=data.frame(column1 = c(Inf, 2, 3, 4, 5),
                column2= c(1, Inf, 1, Inf, 1),
                column3=c(1,2,3,Inf,Inf))
 
# actual dataframe
print(data)
 
# replace inf with NA
final=do.call(data.frame, lapply
              (data, function(value) replace
               (value, is.infinite(value),NA)))
 
# display
print(final)

Producción:

Ejemplo 2: 

R

# create a dataframe with 5 columns and 5 rows
data=data.frame(column1 = c(Inf, 2, 3, 4, 5),
                column2= c(1, Inf, 1, Inf, 1),
                column3=c(1,2,3,Inf,Inf),
                column4=c(Inf,Inf,Inf,3,4),
                column5=c(1,2,3,4,Inf))
 
# actual dataframe
print(data)
 
# replace inf with NA
final=do.call(data.frame,lapply
              (data, function(value) replace
               (value, is.infinite(value),NA)))
 
# display
print(final)

Producción:

Publicación traducida automáticamente

Artículo escrito por gottumukkalabobby y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *