我有一个关于读取和创建数据集的问题。我有一个文本文件,其中包含:
Sunny,Hot,High,Weak,No
Sunny,Hot,High,Strong,No
我实现了如下代码:
from pyspark import SparkConf, SparkContext
import operator
import math
conf = SparkConf().setMaster("local[*]").setAppName("Lab 6")
sc = SparkContext(conf=conf)
rawData = sc.textFile("txtfile.data")
data = rawData.flatMap(lambda line: line.split(","))
而不是产生这样的结果:
[(Sunny, Hot, High, Weak, No), (Sunny, Hot, High, Strong, No)]
结果是:
['Sunny', 'Hot', 'High', 'Weak', 'No', 'Sunny', 'Hot', 'High', 'Strong', 'No']
有人能告诉我怎么修吗?
2条答案
按热度按时间yvgpqqbh1#
flatmap
是map
(转换)和展平,这将为子数组中的每个元素创建一行。你想用
map
方法生成字符串数组类型的列。ecfsfe2w2#
使用
map
而不是flatMap
.