展示我想要的内容然后解释它会很容易。考虑以下数据框:
dr = {'mac':[1, 3, 2, 4, 1, 2], 's': ['aa', 'aa', 'c', 'd', 'ee', 'f']}
d = pd.DataFrame(data=dr)
Run Code Online (Sandbox Code Playgroud)
理想的输出是:
mac s
0 1 aa
4 1 ee
Run Code Online (Sandbox Code Playgroud)
我需要找到所有 'mac' 都有 'aa' 和 'ee' 值。在关于它的示例中,对于 mac = 1,它是真的。对于 mac = 3,它是假的,因为有 'aa' 值但没有 'ee'。
我有两个数值列表(或数据框列 - 无关紧要):
L1 = [1, 0.5, 3, 7, 4.7]
L2 = [2, 0.4, 8, 0.3, 5]
Run Code Online (Sandbox Code Playgroud)
例如。我需要关联这些列表并找到与(indexOfElementFromL1, indexOfElementFromL2)两个元素的最小差异相对应的对。例如,对于我的示例,它应该是:
(0,1), (1,1), (2,0), (3,2), (4,4).真正是我想要的 - 找到与 L1 中的每个元素最接近的元素 L2。当然,我可以采用天真的方法,例如:
for el1 in L1:
for el2 in L2:
....
Run Code Online (Sandbox Code Playgroud)
但我想看到更正确的解决方案