0

DStream [String]을 Dataframes로 변환하려고 할 때 문제가 있습니다.DStream을 Dataframe으로 변환 할 때 데이터가 손실됩니다.

목표는 트위터 스트림 [rdd]을 데이터 프레임으로 변환하는 것입니다. 그러나 아래 코드에서 코드 변환이 작동하지 않습니다. 결국에는 하나의 단어 만있는 데이터 프레임을 받게됩니다. 예를 들어

: 안녕하세요 온몸

당신이 사용하기 때문에 내 dataframe는 단어 "안녕하세요"여기

코드의 조각

val splited_test=texts.transform(rdd => rdd.map(x=> Row.fromSeq(x.split(" ")))) 


    splited_test.foreachRDD { rdd =>{ 

     val fields = new Array[StructField](1) 
     fields(0)=(DataTypes.createStructField("text", StringType, true)) 
     val schema = DataTypes.createStructType(fields) 
     val df= sqlContext.createDataFrame(rdd, schema) 
}} 

답변

1

만 첫 번째 단어가 저장이 포함됩니다 x.split ("").

필드를 하나 만들었습니다.

다음과 같이 코드를 수정하십시오.

val splited_test=texts.transform(rdd => rdd.map(x=> Row.fromSeq(Seq(x)))) 
+0

감사합니다. – MrGildarts

관련 문제