gpt4 book ai didi

删除文本中数字符比大于平均值的所有句子

转载 作者:行者123 更新时间:2023-12-01 08:47:00 25 4
gpt4 key购买 nike

是否可以找到并删除所有包含较高数字符比的句子?我创建了以下函数来计算给定字符串中的比率:

a <- "1aaaaaa2bbbbbbb3"

Num_Char_Ration <- function(string){
length(unlist(regmatches(string,gregexpr("[[:digit:]]",string))))/nchar(as.character(string))
}
Num_Char_Ration(a)
#0.1875

现在的任务是找到一种方法来计算句子的比率(因此对于以“.”结尾的字符序列),然后从文本中删除具有更高比率的句子。例如:

input:
a <- " aa111111. bbbbbb22. cccccc3."
output:
#"bbbbbb22. cccccc3."

最佳答案

我会使用 stringr 包来计算数字和字符:

# Original data
input <- " aa111111. bbbbbb22. cccccc3."
# Split by .
inputSplit <- strsplit(input, "\\.")[[1]]

# Count digits and all alnum in splitted string
counts <- sapply(inputSplit, stringr::str_count, c("[[:digit:]]", "[[:alnum:]]"))

# Get ratios and collapse text back
paste(inputSplit[counts[1, ] / counts[2, ] < 0.5], collapse = ".")
# [1] " bbbbbb22. cccccc3"

counts 看起来像这样:

# To get ratio between digits and string
# Divide first row by second row
aa111111 bbbbbb22 cccccc3
[1,] 6 2 1
[2,] 8 8 7

关于删除文本中数字符比大于平均值的所有句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51309601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com