从 gamlss 百分位数曲线获取百分位数值

2024-02-20

这个问题与:在 R 中使用 gamlss::lms 选择百分位数曲线 https://stackoverflow.com/questions/27497068/selecting-percentile-curves-using-gamlsslms-in-r

我可以从以下数据和代码得到百分位曲线:

age = sample(5:15, 500, replace=T) 
yvar = rnorm(500, age, 20)
mydata = data.frame(age, yvar)
head(mydata)
  age      yvar
1  12  13.12974
2  14 -18.97290
3  10  42.11045
4  12  27.89088
5  11  48.03861
6   5  24.68591

h = lms(yvar, age , data=mydata, n.cyc=30)
centiles(h,xvar=mydata$age, cent=c(90), points=FALSE)

现在,我如何获得曲线上每个 x 值 (5:15) 的 yvar(代表平滑后数据的第 90 个百分位数)?

我尝试阅读帮助页面并发现fitting(h)和fv(h)来获取整个数据的拟合值。但是如何获得每个年龄层在 90 百分位数曲线水平上的值呢?感谢您的帮助。

编辑:下图显示了我需要的内容:

我尝试了以下操作,但它是正确的,因为值不正确:

mydata$fitted = fitted(h)
aggregate(fitted~age, mydata, function(x) quantile(x,.9))
   age    fitted
1    5  6.459680
2    6  6.280579
3    7  6.290599
4    8  6.556999
5    9  7.048602
6   10  7.817276
7   11  8.931219
8   12 10.388048
9   13 12.138104
10  14 14.106250
11  15 16.125688

这些值与直接来自数据的第 90 分位数有很大不同:

> aggregate(yvar~age, mydata, function(x) quantile(x,.9))
   age     yvar
1    5 39.22938
2    6 35.69294
3    7 25.40390
4    8 26.20388
5    9 29.07670
6   10 32.43151
7   11 24.96861
8   12 37.98292
9   13 28.28686
10  14 43.33678
11  15 44.46269

看看这是否有道理。 'smn' 和 'ssd' 的均值和标准差为正态分布的第 90 个百分位数是qnorm(.9, smn, ssd):所以这似乎提供了(某种程度上)合理的结果,尽管不是完整的破解centiles我建议:

 plot(h$xvar, qnorm(.9, fitted(h), h$sigma.fv))

(请注意,只有几个不同的 xvar 却有 500 个点的大量过度绘制。并且您可能需要设置 ylim,以便可以了解完整的范围。)

这里需要注意的是,您需要检查模型的其他部分,看看它是否真的只是一个普通的普通模型。在这种情况下,它似乎是:

> h$mu.formula
y ~ pb(x)
<environment: 0x10275cfb8>
> h$sigma.formula
~1
<environment: 0x10275cfb8>
> h$nu.formula
NULL
> h$tau.formula
NULL

因此该模型只是具有固定方差的均值估计(~1) 的范围内xvar,并且不会出现 Box-Cox 模型等高阶参数带来的复杂情况。 (我无法解释为什么这与绘制的百分位数不同。为此,您可能需要与包作者联系。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 gamlss 百分位数曲线获取百分位数值 的相关文章

  • 将值添加到 rCharts hPlot 工具提示

    我想通过 rCharts 向标准 Highcharts 工具提示添加一些额外的值 示例代码 require rCharts df lt data frame x c 1 5 y c 5 1 z c A B C D E name c K L
  • dplyr :过滤一系列行(在一列中)

    虚拟数据框 id family lt c 1 1 2 2 3 3 people lt c male female male female male children dataset lt data frame id family peopl
  • R 中有没有快速替换列值的方法?

    假设我们有一个包含数值的数据框 如下所示 Temperature Height 32 157 31 159 33 139 我想更换Height价值观与pic 00001 pic 00002等等 最终结果是 Temperature Heigh
  • 为 RStudio Server 1.0.44 配置日志目录

    我在 CentOS 7 上运行 RStudio Server 1 0 44 根据文档 https support rstudio com hc en us articles 200554766 RStudio Server Applicat
  • 如何从类外部更改公共 R6 类方法?

    我希望能够在我的 R6 类中重新定义公共方法 以便它根据该类保存的数据类型进行更改 如下所示 library R6 Simple lt R6Class Simple public list dt mtcars my print functi
  • R 的 dplyr 切片中的奇怪行为

    打电话时slice df i 在 R 的 dplyr 包中 如果我要求的行索引不存在 nrows lt i 它似乎返回除组中的第一行之外的所有行 就像我调用的那样slice df 1 例如 library dplyr c1 lt c a b
  • R Shiny - 修复了 Shiny 仪表板中的侧边栏和主标题

    我有一个简化的闪亮仪表板 请参阅下面的代码 我想修复侧边栏和主标题 因此 在其他帖子的帮助下 我编写了一个 CSS 文件来解决该问题 sidebar color FFF position fixed width 220px white sp
  • (R 错误)错误:cons 内存耗尽(达到限制?)

    我正在处理大数据 并且有一个 70GB 的 JSON 文件 我正在使用 jsonlite 库将文件加载到内存中 我尝试过 AWS EC2 x1 16large 机器 976 GB RAM 来执行此负载 但 R 因错误而中断 Error co
  • 在 R 中打印绘图时第一页为空

    我正在尝试创建一个包含多个图的pdf 更具体地说 我想保存我的图 每页 4 个 因此 我在 r 中有以下代码 可以工作 但将页面留空 第一个 pdf Plots plots numeric four in page pdf paper a4
  • 如何用月份的全名替换数字月份

    使用 tidyverse 包将月份的列更改为完整的实际月份名称 请记住 尽管这些数据只有四个月 但我的真实数据集包含一年中的所有实际月份 我是 tidyverse 的新手 mydata lt tibble camp c Platinum 2
  • 如何对工作区中的元素运行循环?

    gt ls 1 A anorex 1 anorexia B byMonth C clotting 8 counts d D d AD DelayByDay delayed glm D93 15 glmout groups h housing
  • 当添加列较少时追加到现有 SQLite 表,而不将数据库读入 R

    是否有一些简单的方法 无论是在 SQL 端还是在 R 端 将 data frame 附加到具有更多列的现有表 缺失的列应该用 NA 填充 如果它能够优雅地处理比表 1 列数更多的表 2 那么会加分吗 library RSQLite Crea
  • 用闪亮的 R 设计 DT 中的展开行按钮

    我正在尝试设计 DT 中可用的展开行按钮的样式 样式可用here https datatables net examples api row details html 我用于创建数据表的代码是 library DT datatable cb
  • R 中的 Mapdeck 包 - add_grid 似乎未渲染任何内容

    Problem The add gridR 中的函数mapdeck包很精彩 然而 遵循CRAN 文档 https cran r project org web packages mapdeck mapdeck pdf 我似乎无法获得任何数据
  • 计算数据框中每一行的 R 条件运行总和

    我想创建一个等于 data Rating 的运行总和的列 假设第 3 列和第 4 列中有两个条件成立 特别是 data Year 换句话说 这应该计算直到上一年为止每个 id 的评分累积总和 它应该对数据框中的每一行 大约 50 000 行
  • 如何将环境变量传递给shinyapps

    我想将安全参数传递给shinyapps io部署 以便我的应用程序可以通过以下方式获取它们 Sys getenv PASSWORD X 我找不到任何相关内容deployApp函数在rsconnect包裹 您可以使用Renviron网站 or
  • 粘贴两个 data.table 列

    dt lt data table L 1 5 A letters 7 11 B letters 12 16 L A B 1 1 g l 2 2 h m 3 3 i n 4 4 j o 5 5 k p 现在我想粘贴列 A 和 B 以获得一个新
  • 如何在折线图中显示 Sep-12 格式的数据并抑制网格线和灰色背景?

    我正在努力使日期格式正确 数据已经是melt 格式 数据中有四个变量碰巧共享相同的数据 我只是想绘制一个简单的四线折线图 每个变量作为一条单独的线 并将 Sep 12 显示为最新数据点 我正在使用旧的 ggplot 请随意 我有两个问题 第
  • svyby比例的置信区间

    是否存在创建置信区间的现有函数 从一个svyby比例对象 在我的例子中 是一个二进制项目的交叉表survey包裹 我经常比较各组之间的比例 如果有一个可以提取置信区间的函数 使用调查函数svyciprop而不是confint 下面的示例显示
  • R 编程中的字符串分割

    目前 下面的脚本将组合的项目代码拆分为特定的项目代码 rule2 lt c MR df 1 lt test grep paste rule2 sep collapse test Name y SpaceName 1 lt function

随机推荐

  • Python在同一文件夹中找不到模块

    我的 python 不知怎的在同一目录中找不到任何模块 我究竟做错了什么 python2 7 所以我有一个目录 2014 07 13 test 其中有两个文件 test py hello py 哪里你好 py usr local bin p
  • 在视图控制器之间传递数据

    我是 iOS 和 Objective C 的新手MVC https en wikipedia org wiki Model E2 80 93view E2 80 93controller范式 我坚持以下几点 我有一个充当数据输入表单的视图
  • 如何使 C# .NET CF 程序的 AssemblyInfo 版本传播到资源管理器属性窗口?

    看起来 如果您编译 Visual Studio 解决方案并在 AssemblyInfo cs 文件中包含版本号 则应该传播到 Windows 资源管理器属性对话框 这样 某人只需右键单击 exe 并单击 属性 即可查看版本号 Visual
  • 无法从用法推断 SelectMany [重复]

    这个问题在这里已经有答案了 当我尝试编译代码时出现以下错误 方法的类型参数 System Linq Enumerable SelectMany System Collections Generic IEnumerable 系统 Func g
  • PHP 中使用 pthreads 的 Worker 和 Pool

    我目前正在学习 PHP 中的多线程 我已经了解多线程的基础知识 例如创建线程并将多个线程一起运行 但我仍然对 Worker 和 Pool 感到困惑 目前 我有这个脚本
  • Subversion 在存储大量二进制文件方面有多好? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在寻找一个地方来放置几 GB 的文档 主要是 doc and xls 我的团队已经设置了一个 Subversion 服务器来管理我们创建的文
  • 使用模拟器测试 AdMob 时出现“E/Ads:等待未来时出错”错误

    我按照所有必需的步骤在模拟器上测试 AdMob 但日志中出现以下错误 E Ads Error waiting for future java util concurrent ExecutionException java util conc
  • 如何解决“node_modules为空”?

    使用时ng serve on my local 错误是 node modules 为空 已经检查过npm install g angular cli 我认为我的安装存在一些问题node npm or 角度 cli 但我无法得到正确的理由 N
  • cSplit 库(splitstackshape)总是删除该列

    我正在寻找一种通过分隔符拆分列内容并将表格转换为长格式的方法 我发现cSplit来自splitstackshape包 它几乎就是我想要的 现在的问题是drop选项 我希望以某种方式复制我的拆分列 但这并没有发生 我做错了吗 有人遇到过这个问
  • Android:为什么长按也会触发普通点击?

    我有一个 ListView 其中包含长单击和常规单击的侦听器 为什么当我长按列表项时 常规单击事件也会被调用 我需要为不同的点击设置两个单独的函数 From 事件监听器 http developer android com guide to
  • Angular2 中的 ng-disabled 有什么替代方案吗?

    我正在使用 angular2 进行开发 想知道是否有其他选择ng disabled在角度2中 对于前 下面的代码是在 angularJS 中
  • 获取项目中的体式任务以及受让人信息

    我正在尝试检索项目中的体式任务 我想在同一查询中检索受让人信息 我尝试了这个查询并得到了受让人 ID curl u
  • OpenSSL 和 Apple 钥匙串集成

    我们使用的多平台应用程序应在 Windows 和 Mac 上运行 我们的应用程序基于 OpenSSL 作为 SSL 和相关内容的供应商 它使用客户端证书建立安全连接并识别最终用户 我们希望使用 Windows 和 Mac 本机证书存储来确保
  • Netbeans - 构建目标 JDK 6 但使用 Java 7 JRE 运行

    我正在开发一个项目 需要针对 JDK 1 6 进行构建 但我想针对 Java 1 6 和 1 7 对其进行测试 我安装了 Java 1 6 和 1 7 JDK 我知道我可以为每个平台创建一个新的 Java 平台 但这会导致该项目也针对 JD
  • 如何删除非消耗品并再次购买(在测试 Android 应用程序时)?

    如何测试 Android 应用中的非消耗品 noADs 为例 如果 noAds 已经购买了我所做的一切 重新安装游戏 将其安装在其他设备上 它不会导致任何结果 我不会再次看到购买 它总是自动恢复 谷歌表示 要对同一非消耗性产品进行多次测试购
  • 如何编写 UI 测试来测试单击 UITableView 中的第一个单元格时图像是否存在?

    有一个UITableView在我的故事板中 它包含 5 个表视图单元格 当我单击第一个单元格时 它将转到第二个 UIView 并显示相应的图像 如何编写 UITest 部分来测试单击第一个单元格时图像是否显示 XCode 7 有一个神奇的部
  • UPDATE 与 INSERT 性能

    我的假设是否正确UPDATE查询比查询占用更多资源INSERT query 我不是数据库专家 但我的两点意见是 就我个人而言 我认为你在这方面没有太多可做的 即使INSERT会更快 所有这些都有待证明 您可以在插入中转换更新吗 坦白说 我不
  • Python BeautifulSoup 为 findAll 提供多个标签

    我正在寻找一种使用 findAll 来获取两个标签的方法 按照它们在页面上出现的顺序 目前我有 import requests import BeautifulSoup def get soup url request requests g
  • 一次只获取 N 行 (MySQL)

    我正在寻找一种方法来从一个大表中以较小的块获取所有数据 请指教 回答标题中的一个问题使用 LIMIT 运算符 SELECT FROM table LIMIT 0 20 至于身体方面 那也太broad要求一个certain代码示例 不是吗
  • 从 gamlss 百分位数曲线获取百分位数值

    这个问题与 在 R 中使用 gamlss lms 选择百分位数曲线 https stackoverflow com questions 27497068 selecting percentile curves using gamlsslms