我有一个数据框,python
例如:
seqnames start end name number strand
A 50 453 A 1 -
B 30 322 A 2 -
C 10 432 A 3 -
D 36 344 A 4 +
E 40 321 A 5 +
F 78 234 A 6 -
我想根据中的符号更改开始和结束列中的de值strand column
。
因此,对于每一行,如果strand
是-
比DOstart+1
和end-2
如果链是+
比什么都不做
在这里我应该得到:
seqnames start end name number strand
A 51 451 A 1 -
B 31 320 A 2 -
C 11 430 A 3 -
D 36 344 A 4 +
E 40 321 A 5 +
F 79 232 A 6 -
感谢您的帮助
采用:
df[['start','end']]=np.where(df['strand'].eq('-')[:,None],
np.column_stack((df['start']+1,df['end']-2)),
df[['start','end']].values)
print(df)
seqnames start end name number strand
0 A 51 451 A 1 -
1 B 31 320 A 2 -
2 C 11 430 A 3 -
3 D 36 344 A 4 +
4 E 40 321 A 5 +
5 F 79 232 A 6 -
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句