2024-10-06 16:21:05 发布
网友
考虑
df['something'].unique()
这会在变量中生成唯一的项。让我们将其视为一组独特的项目。
array(['aabb','aacc','aadd','bbcc']).
现在我想检查该数组中的任何项如何从“aa”开始
您可以使用函数startswith()。因此,守则将是:
startswith()
number_of_aa = len([x for x in df['something'].unique() if x.startswith('aa')])
使用此方法可以获得一个筛选列表,其中的值以aa开头,然后使用len可以获得计数。如果不希望保留这些值,只需使用True/False,然后对这些值求和:
aa
len
number_of_aa = [True for x in df['something'].unique() if x.startswith('aa')].sum()
您可以使用re模块查找任何模式(不仅仅是“aa”)
re
例如: 如果您有以下数组arr = ['aabb','aacc','aadd','bbcc'],您可以在这行代码中找到以“aa”开头的元素数:
arr = ['aabb','aacc','aadd','bbcc']
len([word for word in arr if re.match(r'aa', word)])
这将为您提供3的输出,而此行
3
len([word for word in arr if re.match(r'bb', word)])
将显示1
1
对于计数True的^{}和sum的解决方案:
True
sum
print (pd.Series(df['something'].unique()).str.startswith('aa').sum()) 3
备选方案是^{}-那么Series构造函数是不必要的:
Series
print (df['something'].drop_duplicates().str.startswith('aa').sum()) 3
或纯python解决方案生成器,带有sum和startswith用于计数True:
startswith
print (sum(x.startswith('aa') for x in df['something'].unique())) 3
您可以使用函数
startswith()
。因此,守则将是:使用此方法可以获得一个筛选列表,其中的值以
aa
开头,然后使用len
可以获得计数。如果不希望保留这些值,只需使用True/False,然后对这些值求和:您可以使用
re
模块查找任何模式(不仅仅是“aa”)例如: 如果您有以下数组
arr = ['aabb','aacc','aadd','bbcc']
,您可以在这行代码中找到以“aa”开头的元素数:这将为您提供
3
的输出,而此行将显示
1
对于计数} 和
True
的^{sum
的解决方案:备选方案是^{} -那么
Series
构造函数是不必要的:或纯python解决方案生成器,带有
sum
和startswith
用于计数True
:相关问题 更多 >
编程相关推荐