Как делить вектор по скаляру в скале? - PullRequest
0 голосов
/ 13 октября 2019

У меня есть файл паркета, который содержит два столбца (идентификатор, объекты). Я хочу вычесть элементы из скаляра, разделить вывод на другой скаляр и сохранить вывод в виде файла паркета.

    val df=sqlContext.read.parquet("file:///usr/local/spark/dataset/model/data/user/part-r-00000-7d55ba81-5761-4e36-b488-7e6214df2a68.snappy.parquet").toDF("id","features") 
 val constant1 = 2.4848911616270923 
val constant2 = 1.8305483113586494
 val performComputation = (s: Double, val1: Double, val2: Double) => { Vectors.dense((s - val1) / val2) 
df.withColumn("features", ((df("features")-val1)/val2)) } df.write.parquet("file:///usr/local/spark/dataset/output1")

стиль файла паркетато же самое. что не так?

1 Ответ

1 голос
/ 13 октября 2019

Вы сохраняете тот же самый кадр данных, который вы прочитали. Попробуйте что-то вроде:

val result = df.withColumn("features", ((df("features") - val1) / val2))
result.write.parquet("file:///usr/local/spark/dataset/output1")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...