我第一次在這裏發帖。選擇所需平均值的最佳參數值
我有,看起來像以下示例數據:
C1 C2 C3 C4
1 1.33 1.86 1.91 2.51
2 1.54 1.74 1.98 2.25
3 1.75 1.97 2.20 2.59
我想找到一個參數值(x),使得每行小於x的平均值數最接近1.例如,對於上述數據,我知道x = 1.75給了我des x的價值。但是,當我有1000行和100列的時候,我想用R來找到它。
X = 1.75
dataset.counts < - rowSums(數據集[,] < X)
dataset.counts
[1] 1個2 0
平均值(dataset.counts)
[1 ] 1
我可以使用optim()來查找x嗎?
你可以做到這一點,但因爲你發現一個零(即你計算的平均值減去你所尋找的參數爲零或接近它),更明顯的功能是「uniroot」。 –
@Glen_b,謝謝,它工作。我用下面的代碼:
> uniroot(F,C(0,6),TOL = 1E-10) $根 [1] 1.747159 $ f.root [1] 0 $ iter [1] 8 $ estim.prec [1] 0.008522727 –
R1 R2 R3 R4 1 1.33 1.86 1.91 2.51 2 1.54 1.74 1.98 2.25 3 1.75 1.97 2.20 2.59 > >˚F< - 函數(X){ + 1 - 平均值(rowSums(數據集[,]
代碼在評論中看起來不正確。也許你可以把它寫成答案。我會贊成它。 –