はい/いいえの投票質問に対するユーザーの応答のMySQLテーブルがあります。このように見えます:
| user_id | poll_id | response
| 111 | 1 | 'yes'
| 111 | 2 | 'no'
| 111 | 3 | 'no'
| 222 | 1 | 'yes'
| 222 | 2 | 'yes'
| 222 | 3 | 'yes'
| 333 | 1 | 'no'
| 333 | 2 | 'no'
| 333 | 3 | 'no'
特定のuser_idについて、それらの応答と他のすべてのユーザーの応答との間の類似性を計算したいと思います。したがって、ユーザー111とユーザー222は0.333類似しており(3つの同じ応答のうち1つがあるため)、ユーザー111とユーザー333は0.666類似しています(3つの同じ応答のうち2つあるため)。
次に、特定のユーザーの類似度の中央値を決定し、それを他のすべてのユーザーの類似度の中央値に対してランク付けして、そのユーザーの「一意性」の尺度を考え出します。
この種の操作の時間計算量はどのくらいでしょうか?
*(注:現在、応答テーブルには約25,000のuser_id、400のpoll_id、および約500,000の行があります。明らかに、すべてのユーザーが各投票の質問に応答するわけではありません。時間計算量の計算に影響しますか?)*