我有两个数据帧,一个(10,2)和一个(4,2),我正在寻找一种更快/更具python风格的方法来逐行比较它们。在
x = pd.DataFrame([range(10),range(2,12)])
x = x.transpose()
y = pd.DataFrame([[5,8],[2,3],[5,5]])
我想构建一个比较矩阵(10,3),显示第一个数据帧中的哪一行符合第二个数据帧中的以下要求。x1值必须是>;=y[0]值,x[0]值必须是<;=y1值。实际上,数据是日期,但为了简单起见,我使用了整数使这个示例更易于理解。我们正在测试时间段中的重叠,因此逻辑显示在各个表的周期中肯定有一些重叠。在
^{pr2}$上面的暴力方法太慢了。有什么建议,我可以矢量化这个或做一些转置矩阵比较?在
您可以将} 扩展维度,这将在执行相同操作时引入^{} 。因此,所有这些比较和输出布尔数组将以矢量化的方式创建。执行应该是这样的-
x
,y
转换为NumPy数组,然后使用^{样本运行-
^{pr2}$相关问题 更多 >
编程相关推荐