Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将RDD[List[String]]转换为RDD[List[Float]]_Python_Apache Spark_Pyspark - Fatal编程技术网

Python 如何将RDD[List[String]]转换为RDD[List[Float]]

Python 如何将RDD[List[String]]转换为RDD[List[Float]],python,apache-spark,pyspark,Python,Apache Spark,Pyspark,例如,本地文件data.txt的结构为: 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 ... 正在将文件读取为RDD[字符串]: lines = sc.textFile("data.txt") 拆分为RDD[列表[字符串]: data_temp = lines.map(lambda line: line.split(" ")) 如何转换为RDD[列表[浮动] 我知道json.loads()可以解析字符串,在这种情况下怎么办 拆分行时,只需将所有字符串转换为

例如,本地文件data.txt的结构为:

1.0 2.0 3.0 4.0
5.0 6.0 7.0 8.0
       ...
正在将文件读取为RDD[字符串]:

lines = sc.textFile("data.txt")
拆分为RDD[列表[字符串]:

data_temp = lines.map(lambda line: line.split(" "))
如何转换为RDD[列表[浮动]


我知道
json.loads()
可以解析字符串,在这种情况下怎么办

拆分行时,只需将所有字符串转换为浮点:

data_temp = line.map(lambda line: [float(i) for i in line.split(" ")])
或者,您可以将数据读取为数据帧并推断类型:

df = (spark.read
  .schema(schema)
  .option("header", "true")
  .option("inferSchema", "true")
  .csv("some_input_file.csv"))

有关读取csv文件时不同选项的更多信息,请参阅。

使用Spark csv reader,并将
inferSchema
设置为true。