Solución:
Puedes usar Column.isNull
/ Column.isNotNull
:
df.where(col("dt_mvmt").isNull())
df.where(col("dt_mvmt").isNotNull())
Si quieres simplemente soltar NULL
valores que puedes usar na.drop
con subset
argumento:
df.na.drop(subset=["dt_mvmt"])
Comparaciones basadas en la igualdad con NULL
no funcionará porque en SQL NULL
no está definido, por lo que cualquier intento de compararlo con otro valor devuelve NULL
:
sqlContext.sql("SELECT NULL = NULL").show()
## +-------------+
## |(NULL = NULL)|
## +-------------+
## | null|
## +-------------+
sqlContext.sql("SELECT NULL != NULL").show()
## +-------------------+
## |(NOT (NULL = NULL))|
## +-------------------+
## | null|
## +-------------------+
El único método válido para comparar el valor con NULL
es IS
/ IS NOT
que son equivalentes a los isNull
/ isNotNull
llamadas a métodos.
Intente usar la función isNotNull.
df.filter(df.dt_mvmt.isNotNull()).count()
Obtener entradas cuyos valores en el dt_mvmt
la columna no es nula tenemos
df.filter("dt_mvmt is not NULL")
y para las entradas que son nulas tenemos
df.filter("dt_mvmt is NULL")
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)