【问题标题】:Dataframes , check if column is spaces数据框,检查列是否为空格
【发布时间】:2017-03-04 04:32:06
【问题描述】:

我有一个如下所示的数据框“df1”。

+----------+----------+ 
| col1     |      col2| 
+----------+----------+ 
|  11111111|123456789 | 
|  11111111|          | 
|  11111111|123456789 | 
|  11111111|          | 
+-----+----------+----+  

我想通过检查 col2 是否为空格来过滤 datafarme。

我在 scala spark-shell 中的命令是 val df3 = crpsdfs.filter($"GASP_NATID01_CD" != "")

但生成的数据框也有带空格的行

预期结果是: +----------+----------+ | col1 | col2| +----------+----------+ | 11111111|123456789 |
| 11111111|123456789 |
+-----+----------+----+

你能帮忙吗?

【问题讨论】:

    标签: scala


    【解决方案1】:

    对于你的例子,试试

    df1.filter("cast(col2 as int) > 0")
    

    通常,可能没有简单的条件来过滤掉空格。你可以试试

    spark.sqlContext.createDataFrame( 
      df1.rdd.filter{case Row(col1, col2) => (col2.asInstanceOf[String].trim != "")}, 
      df1.schema)
    

    【讨论】:

      猜你喜欢
      • 2021-03-08
      • 2017-02-20
      • 1970-01-01
      • 2016-08-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-18
      相关资源
      最近更新 更多