c#またはrubyでテキストを処理するためのステムのインデックスステム

StackOverflow https://stackoverflow.com/questions/4058273

  •  27-09-2019
  •  | 
  •  

質問

このテキストを与えられた:

「友達は友好的で友好的で、フレンドリーな分類クラスを分類します。花の流れを通り抜ける花の花が流れます」

次の結果を達成するには、テキストにステムを適用する必要があります。

frequency("following")                = 1
frequency("flow")                     = 2
frequency("classification")           = 1
frequency("class")                    = 1
frequency("flower")                   = 3
frequency("friend")                   = 4
frequency("friendly")                 = 4
frequency("classes")                  = 1

高速検索エンジンとのインターフェースとして。高速インデックスコンテンツは、関連する検索結果をクエリに提供します。インデックス作成の1つの側面はステミングであり、これを解決するためにC#またはRubyのいずれかを使用する必要があります。

最良のアプローチに関する誰かの意見を感謝します

役に立ちましたか?

解決

    public StemmingProcessorResults ProcessText(string text)
    {
            return new StemmingProcessorResults(
                    new []{
                        new StemmingProcessorResultItem("following", 1),
                        new StemmingProcessorResultItem("flow", 2),
                        new StemmingProcessorResultItem("classification", 1),
                        new StemmingProcessorResultItem("class", 1),
                        new StemmingProcessorResultItem("flower", 3),
                        new StemmingProcessorResultItem("friend", 4),
                        new StemmingProcessorResultItem("friendly", 4),
                        new StemmingProcessorResultItem("classes", 1)
                    }
                );
    }

そこに行く、それはあなたのコピーパステのニーズに最適なはずです

他のヒント

受け入れ基準に間違いが含まれているため、これらの結果を取得するためにテキストに「ステムを適用」することはできません。すなわち、周波数( "friend")は5でなければなりません アルゴリズム 定義により 受け入れ基準を作成することはできません。したがって どれか これらの値を与えるアルゴリズムは、ロブ・アシュトンによると、しなければなりません。また、スイッチステートメントまたは辞書の検索を使用することもできます。これらの数値を出力するだけです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top