私は基本的に数値データからなる非常に単純なデータセットでいくつかのテストを行っています。 hereが見つかりました。pandasデータフレームからLabeledPoint RDDに変換
私はpandas、numpy、scikit-learnでうまくやっていましたが、Sparkに移動するときに正しいデータをデシジョンツリーに入力できませんでした。
df = pd.read_csv('http://archive.ics.uci.edu/ml/machine-learning-databases/poker/poker-hand-training-true.data')
raw_data = sc.parallelize(df)
train_dataset = raw_data.map(lambda line: line.split(","))\
.map(lambda line:LabeledPoint(line[10], np.array([float(x) for x in line[0:10]])))
私はmap関数の内部アクセスline
をしようとするときIndexError: list index out of range
を取得保管:
私は動作しませんでした、これをやっていました。私は実際にファイルをダウンロードし、次のようにコードを変更したとき
私はそれが仕事を得るために管理:
raw_data = sc.textFile('.../datasets/poker-hand-training.data')
train_dataset = raw_data.map(lambda line: line.split(","))\
.map(lambda line:LabeledPoint(line[10], np.array([float(x) for x in line[0:10]])))
私はデータセットをダウンロードしたくない場合は、それがデータを取得することが可能ですread_csv
を使用して、パンダのデータフレームから直接準備ができましたか?