2016-10-05 4 views
0

私は初心者ですので、私にご負担ください。ランダムネットワークの生成方法R

私は60個のノードと246個の重み付けされたリンクからなる私の元のネットワークと比較するために、約100個のランダムなネットワークのセットを作成しようとしています。

各ネットワークは、ランダム密度(つまり、任意のノードが別のノードと接続するランダム確率)を持つ0〜100のランダムな数のノードを持ち、1〜5の間のランダムに重み付けされたエッジを持たせたいと思います。

私はRでのネットワーク分析にはとても新しいので、これらを100回出力するスクリプトを作成する方法や、ランダムなエッジの密度と重みを指定する方法についてはわかりません。

アドバイスは素晴らしいでしょう。

+0

ランダムなネットワークを目的の特性で作成する関数を作成します。その後、ループで実行します。何を試しましたか?どのパッケージ/クラスのネットワークを使用していますか?あなたはどこにいらっしゃいますか? 2つのノードとそれらの間の接続を持つネットワークを作成したい場合、それを行うことはできますか? 'n'を知っているなら' n'ノードはどうでしょうか?あなたはRで乱数を描く方法を知っていますか?あなたはどのような分布をノードの数から引き出したいのか分かりますか? 0-100のユニフォーム、または平均50またはノーマルまたは何か他のポアソン? – Gregor

+0

これは一般的な助言のための素晴らしい場所ではありません - それはあなたが過去の特定の障害を克服するのに役立つ良い場所です。おそらく、[再現可能な例を作る方法](http://stackoverflow.com/q/5963269/903061)を見て、あなたの直近の問題に関連する特定の質問をしてみてください。 – Gregor

答えて

0

igraphは良いスタートです:

library(igraph) 
set.seed(1) 
gs <- list() 
for (x in seq_len(100L)) { 
    gs[[x]] <- erdos.renyi.game(sample(1:100, 1), p.or.m = runif(1)) 
    E(gs[[x]])$weight <- sample(1:5, ecount(gs[[x]]), T) 
} 
plot(gs[[1]], edge.width = E(gs[[1]])$weight) # plot first graph 

はランダムグラフ生成のドキュメントのための?erdos.renyi.gameを参照してください。

+0

@lukaAこれは素晴らしいことです。私は自分がしなければならないことに対して完璧に働くはずです。もしそうでなければ、私はそれを修正するのに十分なことを知っているかどうか試してみるでしょう。 @ Gregor:あなたの質問に答えるだけで(あなたの助言に感謝します)私はigraphを私の基礎、特にerdosとして使ってみました。 renyi.game。私の限界は、機能が何をすることができないか、何ができないかを知っていることです。あなたのお手伝いをしてくださって、ありがとうございます。 – epaul

関連する問題