簡體   English   中英

Spark Scala-處理空的DataFrame

[英]Spark Scala - Handling empty DataFrame

我有一個特定的要求,其中,我需要檢查是否為空的DataFrame。 如果為空,則填充默認值。 這是我嘗試過的,但沒有得到我想要的。

def checkNotEmpty(df: org.apache.spark.sql.DataFrame, col: String):org.apache.spark.sql.DataFrame = 
 {
 if (!df.rdd.isEmpty())  df
    else
  df.na.fill(0, Seq(col))
 }

val age = checkNotEmpty(w_feature_md.filter("age='22'").select("age_index"),"age_index")

想法是如果不為空則獲取df。 如果為空,則填寫默認值零。 這似乎不起作用。 以下是我得到的。

scala> age.show
+---------+
|age_index|
+---------+
+---------+

請幫忙..

  def checkNotEmpty(df: org.apache.spark.sql.DataFrame, col: String):org.apache.spark.sql.DataFrame = 
     {
     if (!df.rdd.isEmpty())  df
        else
      df.na.fill(0, Seq(col))
     }

用你的方法:

如果df is not emptyif控制進入part。

df is empty時轉到else部分。

df.naorg.apache.spark.sql.DataFrameNaFunctions ):用於處理DataFrames中丟失數據的功能。
由於您df.na on an empty dataframe使用df.na on an empty dataframe ,因此沒有可替換的內容,因此結果始終為empty

檢查此問題以獲取有關替換df中的空值的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM