【发布时间】:2018-11-27 16:08:35
【问题描述】:
我在 spark (python) 中有一个带有字节数组的 Dataframe
DF.select(DF.myfield).show(1, False)
+----------------+
|myfield |
+----------------+
|[00 8F 2B 9C 80]|
+----------------+
我正在尝试将此数组转换为字符串
'008F2B9C80'
然后到数值
int('008F2B9C80',16)/1000000
> 2402.0
我找到了一些 udf 样本,所以我已经可以像这样提取数组的一部分:
u = f.udf(lambda a: format(a[1],'x'))
DF.select(u(DF['myfield'])).show()
+------------------+
|<lambda>(myfield) |
+------------------+
| 8f|
+------------------+
现在如何遍历整个数组? 是否可以完成我必须在 udf 函数中编码的所有操作?
可能有一个最好的方法来做演员???
感谢您的帮助
【问题讨论】:
标签: apache-spark lambda apache-spark-sql user-defined-functions