Я бы хотел выполнить многомерное масштабирование для pyspark DataFrame.Я знаю, как решить мою проблему, используя pandas + sklearn, но я борюсь с искровым фреймом данных.Вот решение на основе панд:
from sklearn.metrics.pairwise import euclidean_distances
from sklearn import manifold
input_pandas_df = spark_df.toPandas()
distances = euclidean_distances(input_pandas_df )
scaled_distance_matrix = manifold.MDS(n_components=2).fit_transform(distances)
В терминах первой части вышеприведенного алгоритма у меня есть идея алгоритма, но я не знаю, как его реализовать.
mapper(ri):
for all pairs (aij , aik) in ri do
Emit ((cj , ck) → aijaik)
end for
и вторая проблема заключается в том, как применить коллектор.MDS.