我有一个填充了数据和单元格的Google表格,并希望获得字符串在特定单元格中出现的次数,以及字符串在单个列中的总计出现次数。例如,我试图计算列中“of”字符串的数量,如下所示:
=COUNTA(FILTER('Data Sheet'!G3:G313, REGEXMATCH('Data Sheet'!G3:G313, "of")))
但是,这只返回带有“of”的单元格数。如何获得“of”字符串的总数。
答案 0 :(得分:0)
你可以做这样的事情
COUNTA(SPLIT(REGEXREPLACE('Data Sheet'!G3:G313,"of","$ ."),"$"));
您可以将“of”替换为符号“$”,然后计算其中的符号数。
答案 1 :(得分:0)
对于单个单元格,您可以使用
=(len(G3)-len(substitute(G3, "of",)))/2
要计算列中出现的次数,请尝试
=sum(ArrayFormula(if(len(G3:G), (len(G3:G7)-len(substitute(G3:G, "of",)))/2,)))
注意:2指的是要计算的字符串的字符数("")
更改范围以适应并查看是否有效?
答案 2 :(得分:0)
做得更好,更好:
import boto3
pricing_client = boto3.client('pricing', region_name='us-east-1')
filterValue = instanceType + "-Training"
response = pricing_client.get_products(
ServiceCode='AmazonSageMaker',
Filters=[
{
'Type': 'TERM_MATCH',
'Field': 'instanceType',
'Value': filterValue
},
]
)
## TODO: fix this line to take the right region and not the first
python_dict = json.loads(response['PriceList'][0])
pricePerHour = next(iter(next(iter(python_dict['terms']['OnDemand'].values()))["priceDimensions"].values()))["pricePerUnit"]['USD']
return float(pricePerHour)
因为: $$以避免包含该字符的单元格。 $。防止空字符串影响结果 错误地说$$是一个巧合,而不是两个分隔符
答案 3 :(得分:0)
COUNTA答案实际上不起作用。他们缺少两件事(1) REGEXPREPLACE 不能直接作用于范围(2)结果相减一。
尝试一下:
=COUNTA(SPLIT(REGEXREPLACE(concatenate('Data Sheet'!G3:G313),"of",".$$."),"$$",false()))-1
这对我有用,但是如果值的串联可能导致人为匹配,则它不起作用。实际上,这样的基本假设方法是您可以选择"$"
或".$$."
或其他不会导致人为匹配的选择。