在Python中连接Ndarray,其中索引是浮点数且仅近似相等
假设我有两个日期:在Python中连接Ndarray,其中索引是浮点数且仅近似相等,python,join,multidimensional-array,Python,Join,Multidimensional Array,假设我有两个日期: a = [[1.1,10] [2.2,20] [3.3,30] [4.4,40] [5.5,50]] b = [[1.5,100] [1.9,200] [2.3,250] [3.9,300]] 我想将这两个表连接在一起,以便返回: c = [[1.1,10,None] [2.2,20,200] #note this is 200 not 250 [3.3,30,250]
a = [[1.1,10]
[2.2,20]
[3.3,30]
[4.4,40]
[5.5,50]]
b = [[1.5,100]
[1.9,200]
[2.3,250]
[3.9,300]]
我想将这两个表连接在一起,以便返回:
c = [[1.1,10,None]
[2.2,20,200] #note this is 200 not 250
[3.3,30,250]
[4.4,40,300]
[5.5,50,300]]
换句话说,我想做一些类似于“A左连接B,如果键不完全匹配,则使用小于B且距离B最近的键”
请原谅我没有正确格式化这个问题,这是我关于StackOverflow的第一个问题,我不是一个专业的程序员。我已经通过StackOverflow和Google进行了彻底的搜索
我隐约知道答案可能介于两者之间
并使用屏蔽数组。基本上,我不知道,请帮忙 使用:
屈服
[[ 1.1 10. nan]
[ 2.2 20. 200. ]
[ 3.3 30. 250. ]
[ 4.4 40. 300. ]
[ 5.5 50. 300. ]]
请注意,上述计算将
3.3
与250
关联,而不是200
。如果我对问题的理解正确,这就是期望的结果,因为3.3>2.3
太好了,谢谢您的快速回复!我试试看!是的,你确实正确地理解了这个问题;我对问题进行了编辑以反映这一点。这对于上面的示例是有效的,但是“bval=np.r_[np.nan,b[:,1]]”行有点像黑客吗?我不是故意不尊重你-答案是非常有帮助的-但是如果a[0,:]的值的数目未知<1.5(b[0,:]中的最小值),那该怎么办
[[ 1.1 10. nan]
[ 2.2 20. 200. ]
[ 3.3 30. 250. ]
[ 4.4 40. 300. ]
[ 5.5 50. 300. ]]