这是一个普通的 Swift 包,包含一系列计算 TF-IDF 并对词语进行排序的循环。 这个包仅适用于 iOS v12 及更高版本,因为它使用了 tokenizer(分词器)。
像往常一样安装,使用 Swift 包管理器
File
> Add Packages...
(文件 > 添加包...)https://github.com/aziyan99/SwiftTfIdf
SwiftTfIdf
,分支选择 main
像往常一样使用,这里没有魔法 (未来会添加魔法 :v)
import SwiftTfIdf
let tfIdf = SwiftTfIdf(text: String, stopWords: [String], topN: Int)
。 text 是需要排序的原始文本,stopWords 是停用词(字符串数组),topN 是想要获取的排名最高的词语的数量。.finalCount()
函数获取结果:let results = tfIdf.finalCount()
。 该函数将返回一个字典数组 [(key: String, value: Float)]
,其中 key
是词语,value
是排序值。计算基于循环和顺序操作,将文本分割成句子和词语的数组,计算 TF,计算 DF 和 TF-IDF,对结果进行排序并排名。 这意味着处理的词语越多,执行时间就越长。 实现示例将很快添加。
NaturalLanguage
Foundation
Swift TF-IDF 是在 MIT 许可证下开源的软件。