pyspark中的不相等运算符给出错误的结果

时间:2019-01-11 21:43:56

标签: pyspark

我正在数组中查找此特定记录,它会发现以下行:

xarr.filter(xarr["orderid"] == 27952740).count()

这给出了67,272行,这是正确的答案。

然后我执行此操作。将所有非零值分配给另一个数组:

xarr2 = xarr.filter(xarr["orderid"] != 0)

现在在生成的数组xarr2中,我试图按以下方式查找记录:

xarr2.filter(xarr2["orderid"] == 27952740).count()

此记录返回零条记录。为什么会这样呢?有想法吗?

1 个答案:

答案 0 :(得分:1)

orderid的数据类型为String。将!= 0更改为!= '0'可以得到正确的结果。