わかりました-私にはジレンマがあります。これまでのところ、私のスクリプトはページタイトルをカテゴリに変換します。これはキーワードに基づいており、一致する場合は特定のスコアが追加されます。つまり、一部の単語は10の値を保持し、一部は1のみになります。これは各カテゴリの合計スコアに累積されます。
[{15: [32, 'massages']}, {45: [12, 'hair-salon']}, {23,:[3, 'automotive service']}]
インデックスはカテゴリIDであり、最初の値はスコア、2番目の値はカテゴリです。
場合によっては、これは10を超えるカテゴリの一致に及びます。
これを上位60〜75%のみにフィルタリングするにはどうすればよいですか?
つまり、明らかにマッサージとヘアサロンは自動車サービスをはるかに上回っているので最も多いです。しかし、私たちが使用するこのインテリジェンスをどのようにプログラムすることができますか?
stddevが役立つと思っていましたか?
編集
スコアの低いアイテムを除外しようとしています。
data = [{15: [32, 'massages']}, {45: [1, 'hair-salon']}, {23:[1, 'automotive service']}]]
この場合、マッサージは唯一の高得点アイテムです
data = [{15: [4, 'massages']}, {45: [2, 'hair-salon']}, {23:[1, 'automotive service']}]]
スティルマッサージ
data = [{15: [10, 'massages']}, {45: [50, 'hair-salon']}, {23:[5, 'automotive service']}]]
今ヘアサロン(それは他のものよりもはるかに優れているので)
したがって、最初の(N)オブジェクトを取得する必要はありません。さらに、標準偏差のパーセンテージまたは形式として、他の数値よりもx高い最初のオブジェクトを取得する必要はありません。
したがって、50は10および5よりもはるかに高くなります
10は3または2よりはるかに高い
ただし、9、8、6はほとんど同じです