我有以下几行Python代码:
trans = data.map(lambda line: line.strip().split())
产生Unicode字符串,例如:
u'Hello',u'word'
我想获取普通的UTF-8或ASCII字符串
'Hello','word'
我试图将字符串转换为UTF-8,例如
trans = data.map(lambda line: line.strip().split().encode("utf-8"))
要么
trans = data.map(lambda line: line.strip().split().encode('ascii','ignore'))
但这给出了一个错误:
AttributeError: 'list' object has no attribute 'encode'
谁能告诉我该怎么做?
更新:
数据是scv文件,trans是RDD
为什么不简单地编码和拆分:
data = sc.textFile("README.md") trans = data.map(lambda x: x.encode("ascii", "ignore").split()) trans.first() ## ['#', 'Apache', 'Spark']