java - 为空格分隔的单词实现分类器算法的问题

标签 java algorithm classification

我有一个文本并将其拆分为由空格分隔的单词。

我正在对单位进行分类,如果它出现在同一个词中(例如:“100m”、“90kg”、“140°F”、“US$500”),它们就可以工作,但如果它们出现,我就会遇到问题单独出现,每个部分都在一个单词中(例如:'100 °C'、'US$ 450'、'150 km')。

分类器算法可以理解单元在右边,缺失值在左边还是右边。

我的问题是如何遍历列表中的所有单词,为分类器提供正确的单词。

这只是一个代码示例。我尝试了很多方法。

for(String word: words){
    String category = classifier.classify(word);
    if(classifier.needPreviousWord()){
      // ?
    }
    if(classifier.needNextWord()){
      // ?
    }
}

换句话说,我需要遍历所有单词分类的列表,如果需要测试前一个单词,请提供最后一个单词和单位。如果需要下一个词,请提供单位和下一个词。看起来很简单,但我不知道该怎么做。

最佳答案

不要在你的 for 循环中使用隐式迭代器,而是显式的。然后你可以随意来回。

Iterator<String> i = words.iterator();
while (i.hasNext()) {
    String category = classifier.classify(i.next());
    if(classifier.needPreviousWord()){
        i.previous();
    }
    if(classifier.needNextWord()){
        i.next();
    }
}

这还不完整,因为我不知道你的分类器到底做了什么,但它应该让你知道如何继续。

关于java - 为空格分隔的单词实现分类器算法的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6991933/

相关文章:

java - 如何在左侧操作栏中获取 Logo ?

java - 合并仅用于创建或更新?

java - 使用配置文件中的 Maven 复制并覆盖一些资源

swift - 想要像实时数据库一样获取 firestore

java - 同步 map 与集合的最佳复杂度

python - 如何递归遍历二叉树?

java - 如何测试 Camel 路由是否按顺序调用不同的端点?

machine-learning - 我可以先将 "classification"应用到同一数据集,然后再应用 "regression"吗?

python - BaggingClassifier 在不同的执行中给出相同的结果

matlab - 如何将值分类(按复平面中的象限)?