Python API:如何将pivot by语句重新排列的表与其他表连接起来?

问题描述 投票:0回答:1

我使用Python API,以下是我的脚本:

factors = s.table("dfs://K_FACTOR_LONG", "factor_k_long")
kline = s.table("dfs://daily", "quotes")

t1 = trade.select("value").where("tradetime between timestamp(2023.11.06):timestamp(2023.11.11)").pivotby("tradetime", "securityid,factorname")
m = t1.merge(kline, left_on=["securityid", "time_key"], right_on=["securityid", "tradetime"], how="left")

“因子”是一个包含 101 个 alpha 的窄表。 “kline”包含原始 1 分钟 OHLC 柱的数据。我想连接这两个表,但出现错误:

File "ddb_read.py", line 29, in <module> m = t1.merge(kline, left_on=["securityid", "time_key"], right_on=["securityid", "tradetime"], how="left") AttributeError: 'TablePivotBy' object has no attribute 'merge'

如何直接在 DolphinDB 中加入它们,而不是使用 toDF 方法将表对象下载到 Python 并将其转换为 DataFrame?

join merge dolphindb
1个回答
0
投票

pivot by
语句的结果不能直接与其他表连接。为此,您可以在加入之前使用
executeAs
方法将结果转换为 DolphinDB 表。您还可以调用
s.run
执行连接操作的SQL语句。无论哪种方式,所有计算都在 DolphinDB 中进行,并将结果通过 DolphinDB Python API 传递给 Python。

© www.soinside.com 2019 - 2024. All rights reserved.