我想提取数据帧‘B’中第一个和最后一个位置所指示的子序列. 我想出的算法是:
- 找出位于A位置的B行
- 找到位置的相对位置(即移动位置以使其从0开始)
- 启动一个for循环,使用相对位置作为范围来提取子序列.
上述算法的问题在于运行时.我需要一种替代方法来编译代码,比现有的方法更快.
Desired output:个
first last sequences
3 5 ACA
8 12 CGGAG
105 111 ACCCCAA
115 117 TGT
Used data frames:个
import pandas as pd
A = pd.DataFrame({'first.sequence': ['AAACACCCGGAG','ACCACACCCCAAATGTGT'
],'first':[1,100], 'last':[12,117]})
B = pd.DataFrame({'first': [3,8,105,115], 'last':[5,12,111,117]})