Python 将不同单元中的向量关联起来-数据帧或RDD

Python 将不同单元中的向量关联起来-数据帧或RDD,python,apache-spark,pyspark,spark-dataframe,rdd,Python,Apache Spark,Pyspark,Spark Dataframe,Rdd,我在Spark 2.0上使用Pyspark时遇到了这个问题,我似乎无法确定是否需要进一步重塑数据,或者是否可以将数据帧/RowRDD中每个单元格中的向量关联起来 我有一个正在使用的RowRDD,看起来像这样: [Row(aa_product=1, apr=[45, 58, 25, 3, 54, 28], may=[91, 5, 15, 93, 78, 98]), Row(aa_product=2, apr=[64, 69, 93, 75, 59, 2], may=[27, 6, 15, 11,

我在Spark 2.0上使用Pyspark时遇到了这个问题,我似乎无法确定是否需要进一步重塑数据,或者是否可以将数据帧/RowRDD中每个单元格中的向量关联起来

我有一个正在使用的RowRDD,看起来像这样:

[Row(aa_product=1, apr=[45, 58, 25, 3, 54, 28], may=[91, 5, 15, 93, 78, 98]),
 Row(aa_product=2, apr=[64, 69, 93, 75, 59, 2], may=[27, 6, 15, 11, 33, 2]),
 Row(aa_product=3, apr=[27, 22, 95, 56, 76, 33], may=[70, 88, 24, 49, 33, 70]),
 Row(aa_product=4, apr=[58, 10, 93, 93, 26, 56], may=[89, 47, 8, 94, 84, 89]),
 Row(aa_product=5, apr=[15, 99, 55, 79, 33, 17], may=[70, 65, 13, 77, 92, 89])]
一年中每个月都有额外的列,它们都包含一个整数列表,如图所示

以数据帧形式:

+----------+--------------------+--------------------+
|aa_product|                 apr|                 may|
+----------+--------------------+--------------------+
|         1|[89, 53, 12, 61, ...|[58, 66, 27, 43, ...|
|         2|[73, 83, 61, 90, ...|[37, 89, 69, 11, ...|
|         3|[91, 13, 94, 69, ...|[48, 76, 54, 13, ...|
|         4|[66, 28, 7, 100, ...|[58, 57, 11, 14, ...|
|         5|[21, 58, 70, 52, ...|[87, 85, 43, 41, ...|
+----------+--------------------+--------------------+
我想做的是每个月将每个产品与其他产品关联起来。例如,将
aa_product=1的
apr
中的向量与4月份产品2:5的向量以及每个产品的4月份和5月份向量之间的相关性关联起来

我想出了如何将每个列表分解成它自己独特的product_month列,这将最终为我提供我所需要的解决方案,但这个项目的规模使该解决方案令人望而却步。是否有可能以编程方式访问这些向量并将它们相互关联?RDD或数据帧解决方案可以


谢谢你的帮助

我在spark scala中使用mappartitions解决了与列关联相关的类似问题。在mappartitions内部,编写自定义代码,以了解如何计算每个分区的相关性。希望您理解:)我在spark scala中使用mappartitions解决了类似的列关联问题。在mappartitions内部,编写自定义代码,以了解如何计算每个分区的相关性。希望你能理解:)