如何提取分位数回归中特定分位数中包含的观察值?
How to extract observations included in a particular quantile in quantile regression?
我有一个包含约 2000 个观察值的数据库,并使用 quantreg
包对第 95 个百分位数进行了分位数回归。
我想确定实际用于计算第 95 个百分位数回归的斜率和截距的观察结果,以便进行进一步分析。有什么办法吗?
这是我目前使用的 quantreg
的代码:
datos<-quantreg.example
library(quantreg)
rq(y ~ x, tau=0.95, data=datos, method="br", model = TRUE)
好的,我想我会快速解决我认为你的问题所要求的问题:
set.seed(123)
library(dplyr) #data transformation
library(quantreg) #quantile regression
#make dummy data
df <- data.frame(x = sample(1:10, 200, replace = T))
df$y <- df$x + rnorm(200)
#fit quantile regression
my_q <- rq(y~x, data = df, tau = 0.95)
#use dplyr to get 95% quantile at each x
df_q <- df %>% group_by(x) %>% summarise(yq = quantile(y, probs = .95))
#quick viz with red points being 95% quantiles
with(df, plot(x,y))
legend('topleft',legend = '95% Conditional Quantiles',col = 'red',pch = 19, bty = 'n')
with(df_q, points(x, yq, col = 'red', pch = 19))
abline(reg = my_q)
希望这有帮助。
我有一个包含约 2000 个观察值的数据库,并使用 quantreg
包对第 95 个百分位数进行了分位数回归。
我想确定实际用于计算第 95 个百分位数回归的斜率和截距的观察结果,以便进行进一步分析。有什么办法吗?
这是我目前使用的 quantreg
的代码:
datos<-quantreg.example
library(quantreg)
rq(y ~ x, tau=0.95, data=datos, method="br", model = TRUE)
好的,我想我会快速解决我认为你的问题所要求的问题:
set.seed(123)
library(dplyr) #data transformation
library(quantreg) #quantile regression
#make dummy data
df <- data.frame(x = sample(1:10, 200, replace = T))
df$y <- df$x + rnorm(200)
#fit quantile regression
my_q <- rq(y~x, data = df, tau = 0.95)
#use dplyr to get 95% quantile at each x
df_q <- df %>% group_by(x) %>% summarise(yq = quantile(y, probs = .95))
#quick viz with red points being 95% quantiles
with(df, plot(x,y))
legend('topleft',legend = '95% Conditional Quantiles',col = 'red',pch = 19, bty = 'n')
with(df_q, points(x, yq, col = 'red', pch = 19))
abline(reg = my_q)