Как получить обратный CDF (ядро) в R? -- r пол Связанный проблема

How to get Inverse CDF (kernel) in R?


4
vote

проблема

русский

Есть ли функция в R, которая рассчитает обратное ядро ​​(я рассматриваю нормальный) CDF для определенного альфа (0,1). Я нашел курс, но я не уверен, как это работает.

Спасибо

Английский оригинал

Is there any function in R which will calculate the inverse kernel(i am considering normal) CDF for a particular alpha(0,1). I have found quantile but I am not sure how it works.

Thanks

</div
  
       
       

Список ответов

7
 
vote

Мы можем интегрировать, чтобы получить CDF, и мы можем использовать алгоритм поиска корня для инвертирования CDF. Сначала мы захочем интерполировать вывод из <код> density .

 <код> set.seed(10000) x <- rnorm(1000, 10, 13) pdf <- density(x)  # Interpolate the density f <- approxfun(pdf$x, pdf$y, yleft=0, yright=0) # Get the cdf by numeric integration cdf <- function(x){   integrate(f, -Inf, x)$value } # Use a root finding function to invert the cdf invcdf <- function(q){   uniroot(function(x){cdf(x) - q}, range(x))$root }   

Что дает

 <код> med <- invcdf(.5) cdf(med) #[1] 0.5000007   

Это определенно может быть улучшено. Одной из проблем является то, что я не гарантирую, что CDF всегда меньше или равен 1 (и если вы проверяете CDF для значений больше, чем max (x), вы можете получить что-то вроде 1.00097. Но я слишком устал, чтобы исправить что сейчас. Это должно дать приличное запуск.

 

We can integrate to get the cdf and we can use a root finding algorithm to invert the cdf. First we'll want to interpolate the output from density.

set.seed(10000) x <- rnorm(1000, 10, 13) pdf <- density(x)  # Interpolate the density f <- approxfun(pdf$x, pdf$y, yleft=0, yright=0) # Get the cdf by numeric integration cdf <- function(x){   integrate(f, -Inf, x)$value } # Use a root finding function to invert the cdf invcdf <- function(q){   uniroot(function(x){cdf(x) - q}, range(x))$root } 

which gives

med <- invcdf(.5) cdf(med) #[1] 0.5000007 

This could definitely be improved upon. One issue is that I don't guarantee that the cdf is always less than or equal to 1 (and if you check the cdf for values larger than max(x) you might get something like 1.00097. But I'm too tired to fix that now. This should give a decent start.

</div
 
 
         
         
2
 
vote

Альтернативный подход будет использовать оценку плотности журнала, а не оценку плотности ядра. Посмотрите на пакет «Logspline». Благодаря оценкам плотности LogSpline вы получаете CDF (<код> $user = User::find(Auth::user()->id);0 ) и обратный CDF (<код> $user = User::find(Auth::user()->id);1 ).

 

An alternative approach would be to use log-spline density estimation rather than kernel density estimation. Look at the 'logspline' package. With logspline density estimations you get CDF (plogspline) and inverse CDF (qlogspline) functions.

</div
 
 

Связанный проблема

2  Вопросы с установкой пакета Caret of R в Archlinux  ( Issues with installing caret package of r in archlinux ) 
Я пытаюсь установить пакет <код> SCRIPT="""UPDATE IND_AFRO.DRIVER SET Emp_Id = 1000, update_user_id = 'RIBST-4059' WHERE Emp_Id IN (SELECT Emp_Id ...

0  Извлечение данных из нижних слоев в растробрике  ( Extracting data from lower layers in a rasterbrick ) 
Итак, я извлекаю данные из растробрика, который я сделал, используя метод из этого вопроса: Как извлечь данные из растробрика? В дополнение к получению да...

1  Есть ли не-Java внедрение регрессионной модели M5P библиотеки RWEKA?  ( Is there a non java implementation of the m5p regression model of the rweka libr ) 
Я ищу функцию, которая создает модель регрессии M5P, как <код> M5P функция <код> RWeka библиотеки (как <код> M5P функция на основе кода Java, который имеет...

0  Hexfile Package R  ( Hexfile package r ) 
Я пытаюсь импортировать файл eviews (.wf1) в <код> R с hexView пакет. код: <код> file = readEViews(hexViewFile("eviewsr.wf1"),as.data.frame = TRUE) ...

0  Скрепление финансовых таблиц с веб-страницы с R, Rvest, RCURL  ( Scraping financial tables from web page with r rvest rcurl ) 
Я пробую разбор финансовых таблиц с веб-страницы. Я продолжал. Но я не могу устраивать список, или данные. Карамент <код> library(rvest) link <- "http://www...

1  Замените отсутствующие значения в ячейке со значением из ячейки выше (N-1) с помощью петли  ( Replace missing values in a cell with a value from the cell above n 1 using a ) 
У меня есть файл данных с тысячами строк, у которых есть пробелы, которые я хочу заполнить значением. Мне нужно заменить пустые ячейки со значениями из них вы...

1  Как избежать проблемы Log-Quartelive Log-Inf в MLE Function из пакета Stat4?  ( How to avoid the inf log likelihood problem in mle function from stat4 package ) 
Я хочу максимизировать функцию вероятности логики, чтобы соответствовать некоторым данным, но функция MLE останавливается с этой ошибкой, когда логическая вер...

5  Расчет дней в месяц между интервалом двух дат  ( Calculating days per month between interval of two dates ) 
У меня есть набор событий, которые каждый из которых имеет начало и окончание, но они проходят по объему ряда месяцев. Я хотел бы создать таблицу, которая пок...

99  Как выбрать строку с максимальным значением в каждой группе  ( How to select the row with the maximum value in each group ) 
В наборе данных с несколькими наблюдениями для каждого предмета я хочу взять подмножество только с максимальным значением данных для каждой записи. Например, ...

6  403 Ошибка при использовании Rvest для входа в веб-сайт для соскабливания  ( 403 error when using rvest to log into website for scraping ) 
Я пытаюсь высказать страницу на веб-сайте, который требует входа в систему и в целом получение ошибки 403. Я изменил код из этих 2 сообщений для моего сайта...

2  dlyryr "не обещание" ошибка  ( Dplyr not a promise error ) 
У меня есть набор набора панели, для которого я создал отсталые переменные с помощью функции LAG (). Когда я пытаюсь рассчитать дельта для каждого TimePoint, ...

0  Интеллектуальный способ создать сводную таблицу без цикла в R  ( Intelligent way to create summary table without for loop in r ) 
Добрый день, У меня есть кадр данных следующим образом, с временным меттом в первом столбце, как POSIXLT, а значение данных во втором: <код> properties2 ...

2  Package Desolve Package Can Parames включают в себя матрицу?  ( Desolve package can parameters include a matrix ) 
Я пытаюсь кодировать модель Seir, которая является возрастной, стратифицированной; То есть в моих дифференциальных уравнениях у меня есть параметр для массово...

2  Сравнение нескольких классификаторов: Nemenyi + Holm Test в R  ( Comparing multiple classifiers nemenyi holm test in r ) 
Я пытаюсь воспроизвести результаты из (1) в виде новичков до R. Таблица 6 - это AUCS из 4 классификатора на 14 наборах данных: <код> auc <- matrix(c( 0.76...

0  Как сделать бесконечно рекурсивный список в R: путать [и [[  ( How to make an infinitely recursive list in r confuse and ) 
Редактировать: Этот вопрос глупо, я путающую [и [((спасибо @josilber), но я не могу удалить его. Как можно сделать бесконечно рекурсивный список, l == l [1]...

Связанный проблема

2  Вопросы с установкой пакета Caret of R в Archlinux 
0  Извлечение данных из нижних слоев в растробрике 
1  Есть ли не-Java внедрение регрессионной модели M5P библиотеки RWEKA? 
0  Hexfile Package R 
0  Скрепление финансовых таблиц с веб-страницы с R, Rvest, RCURL 
1  Замените отсутствующие значения в ячейке со значением из ячейки выше (N-1) с помощью петли 
1  Как избежать проблемы Log-Quartelive Log-Inf в MLE Function из пакета Stat4? 
5  Расчет дней в месяц между интервалом двух дат 
99  Как выбрать строку с максимальным значением в каждой группе 
6  403 Ошибка при использовании Rvest для входа в веб-сайт для соскабливания 
2  dlyryr "не обещание" ошибка 
0  Интеллектуальный способ создать сводную таблицу без цикла в R 
2  Package Desolve Package Can Parames включают в себя матрицу? 
2  Сравнение нескольких классификаторов: Nemenyi + Holm Test в R 
0  Как сделать бесконечно рекурсивный список в R: путать [и [[ 



© 2021 www.qaru.top All Rights Reserved. Q&A House все права защищены


Licensed under cc by-sa 3.0 with attribution required.