na().drop()和filter(col.isNotNull)之间的区别(Apache Spark)

Jir*_*riS 27 apache-spark apache-spark-sql

是否有语义之间的任何差异df.na().drop(),并df.filter(df.col("onlyColumnInOneColumnDataFrame").isNotNull() && !df.col("onlyColumnInOneColumnDataFrame").isNaN())在那里dfApache的火花 Dataframe

或者我认为它是一个错误,如果第一个null不在后面返回(不是一个String null,而只是一个null值)在列中onlyColumnInOneColumnDataFrame,第二个没有?

编辑:也添加!isNaN().这onlyColumnInOneColumnDataFrame是给定的唯一列Dataframe.让我们说它的类型是Integer.

Dan*_*nai 42

随着df.na.drop()您删除包含行任何 null或NaN值.

随着df.filter(df.col("onlyColumnInOneColumnDataFrame").isNotNull())你把那些具有空只在列行onlyColumnInOneColumnDataFrame.

如果你想要达到同样的目的,那就是df.na.drop(["onlyColumnInOneColumnDataFrame"]).

  • Daniel,调用应该是df.na.drop()和df.na.drop(subset = ["onlyColumnInOneColumnDataFrame"]) (3认同)