반응형
Spark의 ML 모듈 ( Pipeline
ML)을 사용할 수 있도록 SVM 파일을로드하고 DataFrame
으로 변환하려고합니다.
Ubuntu 14.04에 새로운 Spark 1.5.0을 설치했습니다 ( spark-env.sh
구성 없음).
내 my_script.py
는 다음과 같습니다.
from pyspark.mllib.util import MLUtils
from pyspark import SparkContext
sc = SparkContext("local", "Teste Original")
data = MLUtils.loadLibSVMFile(sc, "/home/svm_capture").toDF()
./ spark-submit my_script.py
를 사용하여 실행 중입니다.
그리고 오류가 발생합니다.
Traceback (most recent call last):
File "/home/fred-spark/spark-1.5.0-bin-hadoop2.6/pipeline_teste_original.py", line 34, in <module>
data = MLUtils.loadLibSVMFile(sc, "/home/fred-spark/svm_capture").toDF()
AttributeError: 'PipelinedRDD' object has no attribute 'toDF'
내가 이해할 수없는 것은 내가 실행하면 다음과 같습니다.
data = MLUtils.loadLibSVMFile(sc, "/home/svm_capture").toDF()
PySpark 셸 내부에서 직접 작동합니다.
해결 방법
# SQLContext or HiveContext in Spark 1.x
from pyspark.sql import SparkSession
from pyspark import SparkContext
sc = SparkContext()
rdd = sc.parallelize([("a", 1)])
hasattr(rdd, "toDF")
## False
spark = SparkSession(sc)
hasattr(rdd, "toDF")
## True
rdd.toDF().show()
## +---+---+
## | _1| _2|
## +---+---+
## | a| 1|
## +---+---+
물론 처음에 DataFrames
로 작업하려면 SQLContext
또는 SparkSession
이 필요합니다.
참조 페이지 https://stackoverflow.com/questions/32788387
반응형
'파이썬' 카테고리의 다른 글
파이썬 개수 및 그룹화 기준에 해당하는 Django (0) | 2020.11.18 |
---|---|
파이썬 __getattr__과 __getattribute__의 차이점 (0) | 2020.11.18 |
파이썬의 문서, rtf 및 txt 리더 (0) | 2020.11.18 |
파이썬에서 날짜와 날짜 시간을 어떻게 비교할 수 있습니까? (0) | 2020.11.18 |
파이썬 Pandas를 사용하여 도표 시리즈를 산포하는 방법 (0) | 2020.11.18 |
댓글