我正在嘗試估計堆法的常量。 我有以下數據集novels_colection
:`nls`無法估計我的模型的參數
Number of novels DistinctWords WordOccurrences
1 1 13575 117795
2 1 34224 947652
3 1 40353 1146953
4 1 55392 1661664
5 1 60656 1968274
然後,我建立了一個功能:
# Function for Heaps law
heaps <- function(K, n, B){
K*n^B
}
heaps(2,117795,.7) #Just to test it works
所以n = Word Occurrences
和K
和B
是價值觀,應該是常數,以便找到我的鮮明預測話。
我試過,但它給了我一個錯誤:
fitHeaps <- nls(DistinctWords ~ heaps(K,WordOccurrences,B),
data = novels_collection[,2:3],
start = list(K = .1, B = .1), trace = T)
錯誤= Error in numericDeriv(form[[3L]], names(ind), env) : Missing value or an infinity produced when evaluating the model
中,我怎麼能解決這個問題的任何想法或以適應功能,並獲得值K
的方法和B
?
你是什麼意思?我應該記錄什麼變換?對於K,我認爲它必須是正面的,但我不確定 –
... ergo,不需要非線性模型,因爲它可以用線性模型解決。 :) –