【发布时间】:2018-12-25 13:02:02
【问题描述】:
我有一个 pandas 数据框,其中一列的每一行都有一个列表。我有一个单独的 numpy 数组,query_ebd,我想在该列的每一行中添加点。我想要的输出是每行一个数字,表示该行中列表与query_ebd 的点积。目前,我正在做:
for row in df.itertuples():
chat_result = query_ebd.dot(row[2])
这可行,但速度很慢。我正在尝试对这个函数进行矢量化,但我无法让它工作。我试过了:
chat_result = df['Embedding'].dot(query_ebd)
但我得到一个点积形状不匹配,因为它试图用query_ebd 点列该列,而不是用它点每一行。我怎样才能让它点每一行?谢谢。
【问题讨论】:
-
你能显示预期的输出和最小的输入吗?
标签: python pandas vectorization dot-product