2017-12-12 13 views
-1

[一覧[]フロート]を、ローカルファイルdata.txtをの構造は次のとおりです。例えば

RDD [文字列]としてファイルを読み込み
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(" ")) 

[一覧[]フロート]?

私は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")) 

+0

'inferSchema'がtrueに設定されたSpark CSVリーダーを使用してください。 – philantrovert

答えて

1

は、単に行を分割する際に浮くために、すべての文字列を変換しますcsvファイルを読むときは、hereを参照してください。