我是python新手,试图使用熊猫找出问题。
我有两个作为熊猫数据帧导入的.csv文件。
这些文件之一是具有ID号,开始和结束坐标的行的文件:
ID Start End
1 45 99
3 27 29
6 13 23
19 11 44
我的第二个文件有一列代码,以及开始和结束坐标:
Code Start End
ss13d 67 100
dfv45 55 100
aal33 101 222
mm0ww 24 28
我想查找在这两个文件之间没有特定顺序重叠的开始和结束坐标,以便结果看起来像这样:
ID Start End Code Start End
1 45 99 ss13d 67 100
1 45 99 dfv45 55 100
3 27 29 mm0ww 24 28
我尝试使用pandas.merge(),但是据我了解,列表需要具有共同的列。在这种情况下,这是我的开始列,但由于它们是比较列,因此我无法合并这些列。
现在,我终于弄清楚了如何定位重叠的逻辑:
df = pd.read_csv (r'file1.csv')
df2 = pd.read_csv ('file2.csv')
c= (df['Start'] <= df2['Start']) & (df['End'] >= df2['Start']) | (df['Start'] <= df2['End']) & (df['End'] >= df2['End'])
但是我没有任何运气可以工作。
有人可以指出我正确的方向吗?我认为在这种情况下,合并或合并都不会对我有效。