Pyspark map from RDD of strings to RDD of list of doubles
我相信在spark / python编程上下文中,这是一个相当基本的操作。我有一个看起来像这样的文本文件:
1 2 3 4 | mydata.txt 12 34 2.3 15 23 11 1.5 9 33 18 4.5 99 |
,然后使用以下代码读取文本文件:
1 | data = sc.textFile("mydata.txt") |
,这将以字符串的RDD形式读取文件。但是,我想分离值并将它们全部转换为浮点数。所以我将上面的行更改为此:
1 | data = sc.textFile("matrix1.txt").map(lambda line: line.split(' ')) |
成功将数据按空格分割。但是我在努力想出map函数,然后将其转换为浮点数。类似于以下内容:
1 | .map(lambda line: float(line)) |
但是这没用。任何帮助表示赞赏!
谢谢!
编辑-请假设我不知道数据的列数。因此,沿着.map(lambda line:float(line [0]),float(line [1]),float(line [2]),float(line [3])的线并不是特别有用。铅>
没关系,明白了。
1 | .map(lambda line: [float(x) for x in line]) |