2016-12-23 2 views
1

15 개의 필드가있는 rdd가 있습니다. 계산을하기 위해서, 나는 판다 데이터 프레임으로 변환해야합니다.spark rdd를 pandas 데이터 프레임으로 변환하십시오.

작동하지 않는 df.toPandas() 함수로 시도했습니다. 모든 rdd를 추출하여 공간으로 분리하고 데이터 프레임에 넣었습니다. 또한 작동하지 않았습니다.

[u'2015-07-22T09:00:28.019143Z ssh 123.242.248.130:54635 10.0.6.158:80 0.000022 0.026109 0.00002 200 200 0 699 "GET https://google.coml HTTP/1.1" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.130 Safari/537.36" ECDE-PAM TLSv1.2', 
u'2015-07-22T09:00:27.894580Z ssh 203.91.211.44:51402 10.0.4.150:80 0.000024 0.15334 0.000026 200 200 0 1497 "GET https://yahoo.com HTTP/1.1" "Mozilla/5.0 (Windows NT 6.1; rv:39.0) Gecko/20100101 Firefox/39.0" ECDL-RAT TLSv1.2'] 

내가 사용할 수있는 기능이 있습니까?

미리 감사드립니다. 다음과 같은 형식으로 RDD 경우

답변

2

: (설치되어야하지만 pandas 파이썬 패키지를 필요)

>>> rdd.collect() 
[[u'2015-07-22T09:00:28.019143Z', u'ssh', u'123.242.248.130:54635', u'10.0.6.158:80', u'0.000022', u'0.026109', u'0.00002', u'200', u'200', u'0', u'699', u'"GET https://google.coml HTTP/1.1"', u'"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/43.0.2357.130 Safari/537.36"', u'ECDE-PAM', u'TLSv1.2'], 
[u'2015-07-22T09:00:27.894580Z', u'ssh', u'203.91.211.44:51402', u'10.0.4.150:80', u'0.000024', u'0.15334', u'0.000026', u'200', u'200', u'0', u'1497', u'"GET https://yahoo.com HTTP/1.1"', u'"Mozilla/5.0 (Windows NT 6.1; rv:39.0) Gecko/20100101 Firefox/39.0"', u'ECDL-RAT', u'TLSv1.2']] 

다음 rdd.toDF(['column1_name', 'column2_name', ...., 'column15_name']).toPandas()이 일을 할 것입니다.

관련 문제