0
데이터 프레임을 CSV 형식으로 내 보냈습니다. 일부 열 데이터 유형이 vector에서 string으로 변경되었습니다.spark dataframe의 열 값의 시작과 끝에서 따옴표를 제거하는 방법은 무엇입니까?
from pyspark.ml.linalg import Vectors, VectorUDT
from pyspark.sql.functions import udf
list_to_vector_udf = udf(lambda l: Vectors.dense(l), VectorUDT())
vectors = df.select(
list_to_vector_udf(df["result1"]).alias("res1"),
list_to_vector_udf(df["result2"]).alias("res2")
)
-
변경 열 값 [0.3505623887760.203056015074, -0.313145598397] 에 '[0.3505623887760.203056015074는 -0.313145598397]
가 I i가 사용되는 벡터로 변환하려고
열의 데이터 유형이 문자열에서 벡터로 변경되었지만 vectorassembler를 적용했을 때 오류가 발생했습니다 ValueError : 문자열을 float로 변환 할 수 없습니다 : [0.389866781754-0.180391363533-0.212950805169]. 그 해결책을 찾다가이 오류에 대한 해결책을 얻었지만 나에게 도움이되지 못했습니다.
감사! 나는 판다 데이터 프레임의 열에 그것을 적용하고 그것은 잘 작동하지만 당신은 스파크 데이터 프레임의 열에 그것을 적용하는 방법을 알고있다. –
예를 들어 주시겠습니까? 감사. –
죄송합니다. 잘못된 스레드였습니다.) 잘 몰라, 미안 해요. –