提问人:Claire 提问时间:9/11/2023 更新时间:9/11/2023 访问量:30
如何计算两个向量的笛卡尔积?
How to calculate the Cartesian product of two vectors?
问:
有没有一种有效的方法可以计算 DolphinDB 中两个向量的笛卡尔积?
例如,给定向量 ['aa', 'bb'] 和 ['cc', 'dd'],期望的结果是 ['aacc', 'aadd', 'bbcc', 'bbdd'] 而不考虑顺序。您的建议将不胜感激!
答:
0赞
Lemonina
9/11/2023
#1
vec1 = ['aa', 'bb'];
vec2 = ['cc', 'dd'];
result = cross(vec1, vec2);
结果将包含['aacc', 'aadd', 'bbcc', 'bbdd']
0赞
M H
9/11/2023
#2
这两个页面指的是同一件事(交叉连接):
https://dolphindb.com/help/SQLStatements/TableJoiners/crossjoin.html?highlight=cartesian
https://dolphindb.com/help/FunctionsandCommands/FunctionReferences/c/cj.html?highlight=cartesian
使用 cj() 的示例
a = table(2010 2011 2012 as year)
b = table(`IBM`C`AAPL as Ticker);
cj(a,b);
结果
year Ticker
2010 IBM
2010 C
2010 AAPL
2011 IBM
2011 C
2011 AAPL
2012 IBM
2012 C
2012 AAPL
试试这个
a = table(aa bb as x)
b = table(cc dd as y);
cj(a,b);
评论