df_2 = df_1[~df_1['MUTATION_CDS'].astype(str).str.contains('\?|del')]
df_3 = df_2[~df_2['MUTATION_CDS'].astype(str).str.contains('dup')]
我用这两行来删除MUTATION_CDS列中的值。
,但是使用模式要容易得多。我的模式是'()>()' 大写字母A,T,G,C可以像'G> C','A> T'一样输入() 我只想将具有此模式的值保留在“ MUTATION_CDS”列中。
答案 0 :(得分:0)
尝试类似的方法?我不知道在'MUTATION_CDS'
中还会弹出哪些其他字符串。基本上,您需要一个模式[A或T或G或C],后跟“>”,然后再次使用相同的模式。
import pandas as pd
df_1 = pd.DataFrame({'MUTATION_CDS':['A>C','C>G','G>T','T>A','AAdel','BBBdup','Whatever'
...: ]})
df_1[df_1['MUTATION_CDS'].astype(str).str.contains("[ATGC]>[ATGC]")]