无法使用 PySpark 腌制 listreverseiterator 对象
Posted
技术标签:
【中文标题】无法使用 PySpark 腌制 listreverseiterator 对象【英文标题】:can't pickle listreverseiterator objects using PySpark 【发布时间】:2016-10-27 16:54:13 【问题描述】:我对 python 很陌生。以下代码存在一些序列化问题:
from pyspark.mllib.stat import Statistics
import random
data = sc.parallelize([range(100),range(100),random.sample(range(100),100),reversed(range(100))])
print(Statistics.corr(data))
我明白了:
TypeError: can't pickle listreverseiterator objects
所以“反转”似乎创建了一个不可序列化的对象——知道如何处理这个问题吗?
非常感谢!
【问题讨论】:
【参考方案1】:替换:
reversed(range(100))
与
list(reversed(range(100)))
【讨论】:
以上是关于无法使用 PySpark 腌制 listreverseiterator 对象的主要内容,如果未能解决你的问题,请参考以下文章
pickle.PicklingError:无法腌制未打开读取的文件
无法腌制 Scikit 学习最近邻分类器 - 无法腌制实例方法对象
在类中使用 ProcessPoolExecutor 时无法腌制协程对象