【问题标题】:Check if two pyspark Rows are equal检查两个 pyspark 行是否相等
【发布时间】:2018-03-27 17:54:49
【问题描述】:

我正在为 Spark 作业编写单元测试,其中一些输出被命名为元组:pyspark.sql.Row

我怎样才能断言他们的平等?

actual = get_data(df)
expected = Row(total=4, unique_ids=2)
self.assertEqual(actual, expected)

当我这样做时,这些值会以我无法确定的顺序重新排列。

【问题讨论】:

    标签: python python-2.7 unit-testing pyspark pyspark-sql


    【解决方案1】:

    根据docs:

    ,您的代码应该按照编写的方式工作

    字段将按名称排序。

    不过,另一种方法是使用pySpark.sql.RowasDict() 方法并将它们作为字典进行比较:

    actual = get_data(df)
    expected = Row(total=4, unique_ids=2)
    self.assertEqual(actual.asDict(), expected.asDict())
    

    【讨论】:

      猜你喜欢
      • 2015-08-21
      • 1970-01-01
      • 2011-08-09
      • 2020-02-12
      • 2012-10-10
      • 2011-07-10
      • 1970-01-01
      相关资源
      最近更新 更多