問題タブ [ranking]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
354 参照

math - ランキング システムでバンドワゴン効果 (投票行動) を軽減するにはどうすればよいですか?

バンドワゴン効果とは、それ自体を次のように説明しています。
すでに上位にランクされているアイテムは、まったく投票される傾向が高く、場合によっては賛成されることさえあります。

私が得たいと思っているのは、いくつかの具体的な推奨事項です。せいぜい、数式に関する実際の経験と、それがどのような状況で役に立ったかに基づいています。

ただし、有用なポインタは大歓迎です。

私のランキングシステム

評価システムがあり、ユーザーがアイテムに賛成票を投じるだけで、ランキング テーブルが毎月リセットされる Web サイトのランキング システムを検討してください。
すべてのユーザーは、各月内にアイテムごとに 1 回の賛成票を投じることができます。また、特定の月内に、その月の終わりにトップ ランクになったアイテムに賛成票を投じたユーザーには報酬が与えられます。


1)... 賛成票を投じた時点での評判が高いほど、2
)... 今月中に賛成票を投じた項目が少ない (現在の賛成票を含む)
3 )...あなた自身の賛成票の前に、今月中にアイテムがすでに持っている賛成票の数が少ない

ランキング表は 1 日 1 回再計算され、誰でも見ることができます。

ゴール

一部のユーザーがバンドワゴン効果のために賛成票を投じたかどうかを判断できないアイテムのランクを修正するために、パート 3) を実装したいと思います (これらのユーザーは、投票するだけで「戦術的な」アドバンテージを得ることを望んでいる可能性があります)。他の多くのユーザーがすでに賛成票を投じていることを認識しています)

また、ある程度の評判を得ることができたが、同じアイテムまたはアイテムのグループに賛成票を投じた靴下人形の使用の可能性に対して、この方法を軽減したいと考えています.

質問

各アイテムの賛成票の時系列リストに適用して、それらの賛成票ごとに係数を取得し、それらの重みが適切な方法で修正されるようにすることができる (おそらくテスト済みの?) 数式はありますか?
私はそれが対数関数のようなものでなければならないと思っていますが、私はそれを完全に把握することはできません...

ありがとうございました!

編集

Zack は次のように述べています。

さらに明確にするために:私が求めているのは、数学関数の形で、この減少をポップに変換する(つまり、重みに係数を適用する、上記を参照)、賢明でバランスの取れた方法で、実際の数学的アプローチを試す価値があるかということです.

私の希望は、誰かが上記の状況と同様または一般的な状況でそのようなアプローチの実践的な経験を持っていることです。

0 投票する
3 に答える
50 参照

web - サーバー上にWebを構築し、それを見つけるために検索エンジンを停止する方法は?

私はウェブサイトを構築していますが、そのウェブサイトが検索エンジンに掲載されると、評判が悪くなり、それらの検索エンジンのランクを上げるのが非常に難しいと聞きました。

どうすれば自分のウェブサイトを検索エンジンに表示されないようにすることができますか。

どんな助けでもいただければ幸いです。

ありがとう。

0 投票する
2 に答える
1094 参照

mysql - WHERE句とUNIONALLを使用してMySQLでランク付けする方法

MySQLクエリについてサポートが必要です。WHERE句を使用して参加者をランク付けしようとしています。ですから、初心者、中級者、経験者を別々にランク付けしたいと思います。例えば:

私はもう試した:

どういうわけかランクをリセットする必要があると思います。多分私は別の問題がありますか?

0 投票する
1 に答える
265 参照

mysql - MySql でこのランキング クエリのサイズを小さくするにはどうすればよいですか?

チャレンジでのチームのパフォーマンスをランク付けするランキング クエリがあります。

データの階層は次のとおりです。 チームにはメンバーがいます メンバーには活動があります 活動には活動タイプがあります 課題には活動タイプがあります

1 つのチャレンジですべてのチームのパフォーマンスをランク付けしたい場合は、次のクエリがうまく機能します。

フォーマットされたクエリは次のとおりです: http://mysql.pastebin.com/XggRL5kX

ChallengeID、チーム、ランキング 99 赤チーム 1 99 青チーム 2

繰り返しますが、これは特定のチャレンジ (ID = 33) では問題なく機能します。

同じ種類のランキングでクエリを取得したいのですが、すでに終了しているような複数の課題があります。

私はこのクエリを試しました:

フォーマットされたクエリは次のとおりです: http://mysql.pastebin.com/mSZwtDm3

ただし、すべてのチャレンジに 1 位と 2 位があるのではなく、ランキングはすべてのチャレンジにまたがっています。このような

ChallengeID、チーム、ランキング 99 レッド チーム 1 99 ブルー チーム 2 134 レッド チーム 3 134 ブルー チーム 4 443 レッド チーム 5 442 ブルー チーム 6

だから、私は間違った場所でランキングを評価していると思いますが、これを機能させる方法についてはちょっとアイデアがありません. 次のような結果を取得するにはどうすればよいですか: ChallengeID, Team, Ranking 99 Red Team 1 99 Blue Team 2 134 Red Team 1 134 Blue Team 2 443 Red Team 1 443 Blue Team 2

0 投票する
3 に答える
338 参照

php - PHP と MySQL を使用してランキング ページを最適化する

ランキングを表示するために使用される Web サイトのテーブルを最適化するために、実際にいくつかの助けを借りることができます。クエリを最適化する方法とインデックスを適切に使用する方法について多くのことを読んできましたが、うまくいくと思った変更を実装した後でも、ほとんど改善が見られません. 私の簡単な解決策は、トップ 100,000 ランキング (毎日更新され、別のテーブルに保存されている) のみを使用して、今のところ速度を向上させることですが、私はそのオプションが本当に好きではありません.

したがって、次のようなユーザーの情報を格納するテーブルがあります。

テーブル「キャッシュ」:

ユーザーについては他にも変数が保存されていますが、ランキングでは使用されていないため、ここでは関係ないと思います。

ユーザーが表示できる 3 つの基本的なランキング ページがあります。

世界観:

地域ビュー:

そしてカントリービュー:

データベースの作業を軽減するために考えられるほとんどすべてのインデックスの組み合わせを試しましたが、一部は少し役立つように見えますが、地域と国のクエリの両方で 26 行しか返さないものは見つかりませんでした(単に「スコア」の指標であり、世界ランキングは猛烈な速さです)。

何か基本的なことが欠けているような気がします。どんな助けでも大歓迎です!

追加情報: キャッシュ テーブルは現在、合計 800,000 を少し超える行で、約 920 メガバイトです。さらに情報を使用できる場合は、お知らせください。

0 投票する
2 に答える
188 参照

sql - SQL Server 2000:レコードの1/3(または2/3)のフィールドの長さ

SQL Server 2000を使用してこれを行うためのより簡単でクリーンな方法はありますか?

数日ごとにこれを行う必要があります。

まず、合計でいくつのレコードがあるかを確認します。

次に、特定のフィールドのすべての長さをリストします。

次に、1/3まで下にスクロールして、値をメモする必要があります。次に、3分の2まで下にスクロールして、値をメモする必要があります。そして最後に最後の値。

x、y、zを見つける必要があります:

0 投票する
5 に答える
57083 参照

algorithm - 文字列類似性アルゴリズム?

最も類似した文字列のリストをフィルタリングするために、2つの文字列を比較し、それらの類似性を計算する必要があります。

例えば。「犬」を検索すると

  1. doggone
  2. ボグ

例えば。「クラック」を検索すると、

  1. 割れ目
  2. 賢明な亀裂
  3. ラック
  4. ジャック
  5. いんちき

私は出くわしました:

これ以上の文字列類似性アルゴリズムを知っていますか?

0 投票する
1 に答える
357 参照

php - MySQL クエリを使用して配列要素に特定の値を割り当てる

アイデアは、次のような一種のランキング MySQL コマンドを実行することです。

編集: ここにも WHERE f_id = $id を追加する必要があります。

f_score列の MySQL データベース テーブルの数値によってランクが決定されます。f_score には 0 から任意の数値のみが含まれ、ユーザー アクションはスコアに加算および減算します。

次に、$sql を使用して配列をループし、各配列要素を「ランク付け」します。特定の変数に番号を割り当てる必要があると思いますので、Webページで番号をエコーできます。

例:あなたのランク: 01

私は軽量のものを探していますが、これを実行してサーバーの使用率を最小限に抑えることができない場合は、それをcronジョブまたは実際には理想的ではないものに押し込む必要があります. 私は配列とループの線に沿って考えていましたか、それとも似たようなものでしたか?

どんな助けでも大歓迎です!

-カルム

0 投票する
2 に答える
736 参照

sql - 2 つのテーブルからハイスコアのランクを計算する

トリビア ゲームがあり、次の 2 つのイベントに対してユーザーに報酬を与えたいと考えています:
1) 正しく答える
2) 質問プールに質問を送信する

特定のプレーヤーのスコアとランクを照会したいのですが、次のクエリを使用します。

プレーヤーが両方のテーブルにいる場合、つまり正しく答えて質問を送信した場合に機能します。ただし、プレイヤーが質問を送信していない場合は機能しません

このクエリを修正する方法はありますか? ($userid は指定されたパラメーターです)

ありがとう!

ありがとうトム!唯一の問題はランクが正しくないことです:
userid スコアランク
58217 380 1
12354 80 3
32324 0 2

0 投票する
3 に答える
8291 参照

sql - ランキング機能なしのランキング

各顧客のランクを選択し、出力に他の情報とともに表示するために、次のクエリを作成しました。

DENSE_RANK()しかし、関数を使用せずにランキングの仕事をする方法を知りたいです。出来ますか?