2017-05-11 12 views
1

私の目標は、単純な.datファイルを作成し、実際のデータと完全なZipf分布の理論上の点、つまり分布をプロットすることです各項目は1 /(ランク)に等しい値を持つ。私はちょうどこのような場合には(ランクごとに理想的なジップ分布値を含む新しい列を追加することができますことを学んだ別のスレッドからgnuplotのデータから "完璧な" Zipf分布をプロットする

# List of most followed users on instagram 
# By rank and millions of followers 
# From Wikipedia 
# https://en.wikipedia.org/wiki/List_of_most_followed_users_on_Instagram 
# rank, millions of followers 

1 222 
2 120 
3 105 
4 101 
5 101 
6 100 
7 99 
8 93 
9 86 
10 85 
11 80 
12 79 
13 76 
14 73 
15 71 
16 69 
17 67 
18 65 
19 63 
20 63 

、222:例えば

は、ほとんどのための私のデータは、Instagramのアカウントを追いました、111、74、55.5など)を実行してから2番目のプロットを,'' using 1:3として実行しますが、手動で計算を行い、元のファイルに追加する必要があります。これは避けようとしているステップのです。これは可能ですか?他のディストリビューション/データの計算にどのように拡張できますか?

答えて

0

使用stats

stats 'file.dat' u 2 nooutput 
max = STATS_max 

と第二のカラムの最大値を計算するために、そして、あなたは、私はまだ初心者だ(max/$1)

plot 'file.dat' u 1:2 pt 7 t 'data',\ 
    '' u 1:(max/$1) w l t 'ideal Zipf' 
+0

とジップ分布を計算し、あなたが正確に何をしています'stats'? Zipfディストリビューション(私はそうではないかもしれません)を理解していれば、ここの理想的なディストリビューションはここにあるべきではありませんか? たとえば、2番目のデータは120ですが、理想は111になるはずです。私が何かを逃していない限り。フォローアップのため申し訳ありません:S – Andycyca

+0

私は統計を使って2番目の列の最大値を計算します。あなたが正しいデータに関して、最初の部分は単純に 'u 1:2' – Christoph

関連する問題