unique関数を使い,Heaps則をRで描く.
uniqueは与えられたベクトルから,重複しない要素だけ抜き出すので,
uniqueで抜き出した要素数をlengthで数えれば,Heaps則を描くことができる.
ただし,時間がかかる.

N <- 20000
DW <- 5000

doc <- sample(DW,N,replace=TRUE)
#write.table(z,"doc_power.txt",append=FALSE,col.names=FALSE,row.names=FALSE,quote=FALSE)

heaps <- as.vector(NULL)
for(i in 1:N){
    heaps[i] <- length(unique(doc[1:i]))
  }

でも,アルゴリズムの工夫でもっと高速できそう.


Rの場合,m[0]というのは存在できない.m[1]から代入する.