我有一個像下面這樣的列表數據。我想執行非線性迴歸高斯曲線中頻和計數爲計算列表中的高斯曲線擬合
mylist<- structure(list(A = structure(list(breaks = c(-10, -9,
-8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4), counts = c(1L,
0L, 1L, 5L, 9L, 38L, 56L, 105L, 529L, 2858L, 17L, 2L, 0L, 2L),
density = c(0.000276014352746343, 0, 0.000276014352746343,
0.00138007176373171, 0.00248412917471709, 0.010488545404361,
0.0154568037537952, 0.028981507038366, 0.146011592602815,
0.788849020149048, 0.00469224399668783, 0.000552028705492686,
0, 0.000552028705492686), mids = c(-9.5, -8.5, -7.5, -6.5,
-5.5, -4.5, -3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5),
xname = "x", equidist = TRUE), .Names = c("breaks", "counts",
"density", "mids", "xname", "equidist"), class = "histogram"),
B = structure(list(breaks = c(-7, -6, -5,
-4, -3, -2, -1, 0), counts = c(2L, 0L, 6L, 2L, 2L, 1L, 3L
), density = c(0.125, 0, 0.375, 0.125, 0.125, 0.0625, 0.1875
), mids = c(-6.5, -5.5, -4.5, -3.5, -2.5, -1.5, -0.5), xname = "x",
equidist = TRUE), .Names = c("breaks", "counts", "density",
"mids", "xname", "equidist"), class = "histogram"), C = structure(list(
breaks = c(-7, -6, -5, -4, -3, -2, -1, 0, 1), counts = c(2L,
2L, 4L, 5L, 14L, 22L, 110L, 3L), density = c(0.,
0., 0.0246913580246914, 0.0308641975308642,
0.0864197530864197, 0.135802469135802, 0.679,
0.0185185185185185), mids = c(-6.5, -5.5, -4.5, -3.5,
-2.5, -1.5, -0.5, 0.5), xname = "x", equidist = TRUE), .Names = c("breaks",
"counts", "density", "mids", "xname", "equidist"), class = "histogram")), .Names = c("A",
"B", "C"))
我已閱讀本 Fitting a density curve to a histogram in R 我的列表,並報告平均值和標準偏差的每一個元素,但是這是如何適應的嵌合曲線轉換爲直方圖。我要的是最佳擬合值」
‘中庸’ ‘SD’
如果我使用PRISM做到這一點,我應該得到以下結果 對於A
Mids Counts
-9.5 1
-8.5 0
-7.5 1
-6.5 5
-5.5 9
-4.5 38
-3.5 56
-2.5 105
-1.5 529
-0.5 2858
0.5 17
1.5 2
2.5 0
3.5 2
進行非線性迴歸高斯曲線擬合,我得到
"Best-fit values"
" Amplitude" 3537
" Mean" -0.751
" SD" 0.3842
第二組 乙
Mids Counts
-6.5 2
-5.5 0
-4.5 6
-3.5 2
-2.5 2
-1.5 1
-0.5 3
"Best-fit values"
" Amplitude" 7.672
" Mean" -4.2
" SD" 0.4275
和第三個
Mids Counts
-6.5 2
-5.5 2
-4.5 4
-3.5 5
-2.5 14
-1.5 22
-0.5 110
0.5 3
我得到這個
"Best-fit values"
" Amplitude" 120.7
" Mean" -0.6893
" SD" 0.4397
如果您正在尋找估計的平均值和標準差/方差,我認爲這可以通過最大似然程序來完成。在R中有'mle'函數以及'maxLik'包。在這種情況下,您應該使用原始數據,而不是中間數和計數。 「mle」中的第一個例子應該與您想要的類似。 – lmo
我目前無法觀看視頻,但在可以的情況下,我會在幾個小時內查看視頻。似乎從分箱數據估計失去了有用的信息。考慮到你有這麼小的樣本量,這尤其值得關注:16我認爲。 – lmo
@lmo好吧,不是真的樣本大小是像1000這樣高得多。所以這不會是一個問題,在這種情況下,我認爲 – nik