在Spark中将简单的一行字符串转换为RDD

时间:2014-10-02 09:07:15

标签: python apache-spark pyspark distributed-computing rdd

我有一个简单的界限:

line = "Hello, world"

我想将它转换为只有一个元素的RDD。 我试过了

sc.parallelize(line)

但它得到了:

sc.parallelize(line).collect()
['H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd']

有什么想法吗?

3 个答案:

答案 0 :(得分:28)

尝试使用List作为参数:

sc.parallelize(List(line)).collect()

它返回

res1: Array[String] = Array(hello,world)

答案 1 :(得分:0)

下面的代码在Python中可以正常工作

  
    
      

sc.parallelize([line])。collect()

             

['Hello,world']

    
  

在这里,我们将参数“ line”作为列表传递。

答案 2 :(得分:0)

使用以下代码:

sc.parallelize(Seq(line))