我有一个列表minhash_sig=['112','223'],我想找出这个列表和pyspark数据帧列中每个元素之间的jaccard相似性。不幸的是,我不能这样做
我尝试使用array\u intersect和array\u union来进行比较。但是,当我得到消息Resolved attribute missing
时,这不起作用
这是我迄今为止创建的pyspark数据框架
df = spark.createDataFrame(
[
(1, ['112','333']),
(2, ['112','223'])
],
["id", "minhash"] # add your column names here
)
minhash_sig = ['112', '223']
df2 = spark.createDataFrame([Row(c1=minhash_sig)])
这是我用来比较列表和pyspark列元素的代码
df.withColumn('minhash_sim',size(array_intersect(df2.c1, df.minhash)))
有人知道我如何在没有这个错误的情况下进行比较吗
df1将不知道df2中的列,除非您连接它们并创建一个对象,您可以尝试先交叉连接这两个列,然后尝试代码:
相关问题 更多 >
编程相关推荐