gpt4 book ai didi

python - Apache Spark中两个简单rdd的协方差

转载 作者:太空宇宙 更新时间:2023-11-03 20:05:12 25 4
gpt4 key购买 nike

我正在使用 ApacheSpark,我创建了两个简单的 rdd,计算了它们的平均值,现在我想计算两个 rdd 值的协方差。但是当我输入正文中所示的指令时,它会产生语法错误。我尝试调试它但无法。我将如何解决这个问题?

rddX = sc.parallelize(range(100))
rddY = sc.parallelize(range(100))

meanX = rddX.sum()/rddX.count()
meanY = rddY.sum()/rddY.count()

rddXY = rddX.zip(rddY)

rddXY.take(10)

covXY = rddXY.map(lambda (x,y): (x-meanX)*(y-meanY)).sum()/rddXY.count()

最佳答案

您可以使用cov函数,如下所示

from pyspark.sql.functions import rand
df = sqlContext.range(0, 10).withColumn('rand1', rand(seed=10)).withColumn('rand2', rand(seed=27))

df.stat.cov('rand1', 'rand2')
0.009908130446217347

更多详细信息可以在这里找到 - https://databricks.com/blog/2015/06/02/statistical-and-mathematical-functions-with-dataframes-in-spark.html

关于python - Apache Spark中两个简单rdd的协方差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59005342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com