2016-03-21 2 views
0

の比較私はは、すべての可能な方法での43個の変数

43個の変数(データセット、データ)を比較横断するための最良の方法である方法を把握しようとしている私はvariable 2,3,4,5,6,7....43で変数1を比較して、変数2を比較する必要がありますvariable 1,3,4,5,6,7....43と続き、変数no。 43.

私はある種のループを使用すべきだと思いますが、この操作を効率的に実行する方法はわかりません。

私はちょっとした疑似コードが必要だと思います。いずれにせよ、私はStataのdo-fileでこれをしたいと思っています。

+0

データ構造体 – akashchandrakar

答えて

2

と仮定します。変数var1-var43およびその他の変数名で、その後

forval i = 1/43 { 
    forval j = 1/43 { 
     if `i' != `j' { 
       <code for comparison between var`i' and var`j'> 
     } 
    } 
} 

、あなたの質問が意味するものである第2および第1の間のそれとは第一および第二の異なっ間の「比較」は、foreachが良いかもしれないということ。

0

@NickCoxが示唆しているように、O(NxN)ネストループを使用できます。それはあなたの "43"が実際に1000である場合、それは時間がかかりすぎる場合、より良い方法があります。 O(N logN)である各リストを(間接的に)ソートし、O(N)であるマージオーダーループを実行します。したがって、すべてO(N logN)です。

+0

ここで計画できるように、変数の各ペアを直接計算する必要がある場合は、どのように機能しますか? –

関連する問題