我有一个numpy字母数组'x'和'y'。我如何为这个做一个布尔数组,如果索引== 'x'返回true,否则返回false?
'x'
'y'
== 'x'
vmjh9lq91#
In [1]: import numpy as np In [2]: a = np.array(['x', 'y', 'y', 'x', 'y']) In [3]: a == 'x' Out[3]: array([ True, False, False, True, False], dtype=bool)
字符串
osh3o9ms2#
一种更通用的方法,适用于多字母条件:
base_mask = lambda x: x == 'A' or x == 'a' or x == 'T' or x == 't' vec_base_mask = np.vectorize(base_mask) seq = 'TCTATcgGGa' a = np.array([*seq]) masked_a = vec_base_mask(a) # >>> masked_a # array([ True, False, True, True, True, False, False, False, False, # True])
2条答案
按热度按时间vmjh9lq91#
字符串
osh3o9ms2#
一种更通用的方法,适用于多字母条件:
字符串