首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >R4.5.0新增特性一览!

R4.5.0新增特性一览!

作者头像
医学和生信笔记
发布2026-03-17 17:27:26
发布2026-03-17 17:27:26
1240
举报

关注公众号,发送R语言python,可获取资料

💡专注R语言在🩺生物医学中的使用


设为“星标”,精彩不错过


R语言4.5.0版本已经于2025.4.11日发布,以下是一些新的特性:

  1. 按照 Michael Chirico 的 PR#18696 提议,as.integer(rl) 以及 as.raw(rl) 现在可用于处理由 raw(1) 元素构成的列表。
  2. graphics 包中的 grid() 函数新增了可选参数 nintLog
  3. tools 包新增了 check_package_urls()check_package_dois() 函数,用于检查包源中的 URL 和 DOI。
  4. 由 Spencer Graves 在 R-devel 上提议,为类 “ts” 时间序列新增了 head()tail() 方法。
  5. 新增 qr.influence() 函数,它是 lm.influence() 留一法诊断计算的 “基础” 接口,这在 PR#18739 中被提出。
  6. 现在从包元数据自动生成的 citation() 包结果,也会为 CRAN 和 Bioconductor 包提供 DOI。
  7. 新增 grepv() 函数,它与 grep() 相同,只是默认值 value = TRUE
  8. 当泛型函数和方法都未导出时,methods(<pkg>:::<genfun>) 现在也会报告方法。
  9. pdf() 函数新增了 author 参数用于设置相应的元数据字段,同时新增逻辑参数 timestampproducer 用于选择性地省略各自的元数据(感谢 Edzer Pebesma)。
  10. grDevices::glyphInfo() 函数新增了 rot 参数,可实现逐个字形的旋转(感谢 Daniel Sabanes Bove)。
  11. tools 包现在导出了 CRAN_current_db()CRAN_aliases_db()CRAN_rdxrefs_db()CRAN_archive_db()CRAN_authors_db() 函数。
  12. tools 包现在导出了 R()parse_URI_reference() 函数。
  13. tools 包现在导出了 base_aliases_db()base_rdxrefs_db() 函数。
  14. 现在可以在 Windows 系统的 Rgui 数据编辑器中设置行名和列名的背景颜色。
  15. Windows 系统下的 Rterm 现在可接受任意长度的输入行。
  16. Windows 系统下的 file.info() 函数现在会提供文件所有者的名称和域。
  17. Windows 系统下的 Sys.info() 函数现在会提供当前用户的域。
  18. findInterval() 函数新增了 checkSortedcheckNA 参数,可跳过相对耗时的检查,这与 PR#16567 相关。
  19. pnorm(x) 函数在出现下溢时表现更优雅。
  20. get(nam, env) 现在会发出一个分类错误 “getMissingError”,它是 “missingArgError” 的 “子类”,后者也用于类似情况,例如 f <- function(x) exp(x); try(f())
  21. 集合操作现在对于同类且看似向量的操作数,会避免进行 as.vector() 转换。
  22. md5sum() 函数可通过使用 bytes= 参数而非 files= 参数来计算原始字节向量的 MD5 哈希值,这两个参数互斥。
  23. tools 包新增了与 md5sum() 类似的 sha256sum() 函数,用于实现 SHA - 256 哈希算法。
  24. 得益于 Ivan Krylov 提供的补丁,类 “AsIs” 的 xtfrm() 方法现在速度大幅提升。
  25. 数据框的 merge() 方法不再使用 I() 转换用于索引的行名,当 sort = TRUEall.x 和 / 或 all.y 设置为 TRUE 时,执行速度会更快。
  26. methods 包的内部函数 .requirePackage() 现在调用 requireNamespace(p) 而非 require(p),因此在需要方法或类定义时,不再将包添加到 search() 路径中。因此,依赖旧行为的工作流程需要通过添加相应的 library(p) 调用来修改。
  27. 更多 R 级别的消息采用包含 “字符串” 的通用格式,以提高一致性并减少翻译工作量。
  28. available.packages()install.packages() 函数新增了可选开关 cache_user_dir,此功能处于实验阶段。
  29. sunspot.month 数据集已更新到 2024 年 10 月,由于重新校准,历史数据也发生了变化,为保证可重复性,将之前的数据保留为 sunspot.m2014
  30. quartz() 设备现在支持 alpha 掩码(感谢 George Stagg、Gwynn Gebeyhu、Heather Turner 和 Tomek Gieorgijewski)。
  31. 日期时间对象(POSIX.t)的 print() 方法新增了可选参数 digits 用于处理小数秒,该参数会传递给改进后的 format.POSIXlt() 函数,因此 print(<date.time>, digits = n) 可打印出小数秒。
  32. install.packages()download.packages() 函数使用 libcurl 同时下载多个包,显著缩短了安装或下载多个包的时间。
  33. download.file() 函数的状态报告功能得到扩展,可报告同时下载时各个文件的下载结果。
  34. Rd⁠\link⁠ 宏现在当主题由可选参数指定时,允许在链接文本中使用标记,例如 ⁠\link[=gamma]{\eqn{\Gamma(x)}}⁠
  35. La_library() 为空,sessionInfo()La_version() 可用时仍会报告其信息。
  36. |by| = 1 时,seq.int(from, to, by, ....) 的行为与省略 by 参数时相同,因此返回 from:to,可能为整数类型。
  37. 得益于 Michael Chirico 在 PR#17672 中的报告和补丁提议以及 “R Dev Day” 的贡献,seq.Date(from, to, by, ....)seq.POSIXt(..)from 参数缺失但提供了足够其他参数时也能正常工作。
  38. by 参数缺失时,Date 方法在 seq(from, to) 中也能工作,且 by 默认值为 “1 days”。
  39. 现在文档记录(并测试)了在两种 seq 方法中,by 字符串可以缩写。
  40. 这两种方法现在更一致地返回或保留内部类型 “integer”,而且 as.POSIXct({}) 内部为整数类型。
  41. duplicated()unique()anyDuplicated() 函数现在也可用于类表达式向量。
  42. 新增 use() 函数,用于在 R 脚本中使用包,并能完全控制添加到搜索路径的内容(实际上自 R 4.4.0 起就已可用)。
  43. tar()untar() 函数对 tar 包的 zstd 压缩提供了一定支持(这依赖于操作系统对 libzstdtar 的支持)。
  44. print(summary(<numbers>)) 新增了可选参数 zdigits,以实现更灵活和一致的(双精度)四舍五入。当前默认值 zdigits = 4L 处于实验阶段,同时指定 digits = *zdigits = * 可使行为不受全局 digits 选项的影响。
  45. “difftime” 对象的 format() 方法新增了向后兼容的选项 with.units
  46. 为 “difftime” 对象新增了 summary() 方法,其输出格式良好,与 “Date” 和 “POSIXct” 对象的类似。
  47. unique() 函数的默认方法现在也可处理 “difftime” 对象。
  48. f(x) 非有限值时,optimize(f, *) 函数在警告信息中会更多地提及该值,且不再用最大正有限数替换 -Inf
  49. 得益于 PR#18677 贡献者,gamma()is.numeric() 函数的文档更详细。
  50. 得益于 Heather Turner 和 Ella Kaye,新增了 gait 数据集,用于示例。
  51. 得益于 Ella Kaye、Heather Turner 和 Kristen Gorman,新增了 penguinspenguins_raw 数据集。
  52. isSymmetric(<matrix>) 函数新增了选项 trans = "C",当设置为非默认值时,可测试复矩阵的 “简单” 对称性。
  53. 得益于 Ben Bolker 的 PR#18860,model.frame() 函数在某些情况下,当公式中的变量未找到时,会生成更具信息性的错误消息。
  54. 当函数属于组泛型且方法是针对泛型时,selectMethod(f, ..) 函数现在会保留函数名。

更多信息可参考官方文档:https://cran.r-project.org/doc/manuals/r-release/NEWS.html

医学和生信笔记,专注R语言在医学中的使用!

关注我,不迷路:

三连一下,感谢支持

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-04-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 医学和生信笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档