Я создал функцию approxfun
из пакета Binsmooth
для поиска средств по двоичным данным.
binedges <- c(10000,15000,20000,25000,30000,35000,40000,45000,
50000,60000,75000,100000,125000,150000,200000,NA)
bincounts <- c(157532,97369,102673,100888,90835,94191,87688,90481,
79816,153581,195430,240948,155139,9452,92166,103217)
splb <- splinebins(binedges, bincounts, 76091)
, набрав splb$splineCDF(x)
вернет y, но я хочу найти среднее значение.
Я понимаю, что эта функция предназначена для достижения этой цели, но она не работает для функций, созданных с помощью пакета Binsmooth
.
получить значение x по заданному значению y: общий корень для функции линейной / нелинейной интерполяции
Я собрал простой способ, который найдет приблизительное значение, но он не очень удовлетворителен и очень требователен к компьютеру:
splb$splineCDF(50000)
fn(1000)
probability<- 0
income<- 0
while(probability< 0.5){
probability<- splb$splineCDF(income)
income<- income+ 10
}
Есть идеи?