r - 创建一个允许我读取 RDS 文件的函数?
问题描述
我只是想创建一个函数,使我能够读取 RDS 文件.. 所以我有下面的代码,我希望 a1 在我输入 test(example.RDS) 时在 Rstudio 中显示 RDS 文件
readRDS(paste0("C:/Users/Jack/Documents/","example.RDS")
有效,但是当我尝试将其转换为函数时,它不起作用...
test <- function (entry) {
a1 <- readRDS(paste0("C:/Users/Jack/Documents/",entry))
}
解决方案
你在寻找这样的东西吗?
saveRDS(diamonds, '~/diamonds.rds')
#> Error in saveRDS(diamonds, "~/diamonds.rds"): object 'diamonds' not found
test <- function(entry) {
readRDS(paste0("~/", entry))
}
test('diamonds.rds')
#> # A tibble: 53,940 x 10
#> carat cut color clarity depth table price x y z
#> <dbl> <ord> <ord> <ord> <dbl> <dbl> <int> <dbl> <dbl> <dbl>
#> 1 0.23 Ideal E SI2 61.5 55 326 3.95 3.98 2.43
#> 2 0.21 Premium E SI1 59.8 61 326 3.89 3.84 2.31
#> 3 0.23 Good E VS1 56.9 65 327 4.05 4.07 2.31
#> 4 0.29 Premium I VS2 62.4 58 334 4.2 4.23 2.63
#> 5 0.31 Good J SI2 63.3 58 335 4.34 4.35 2.75
#> 6 0.24 Very Good J VVS2 62.8 57 336 3.94 3.96 2.48
#> 7 0.24 Very Good I VVS1 62.3 57 336 3.95 3.98 2.47
#> 8 0.26 Very Good H SI1 61.9 55 337 4.07 4.11 2.53
#> 9 0.22 Fair E VS2 65.1 61 337 3.87 3.78 2.49
#> 10 0.23 Very Good H VS1 59.4 61 338 4 4.05 2.39
#> # … with 53,930 more rows
#no need to pass string as an argument
test2 <- function(entry) {
.string <- substitute(entry) |> as.character()
readRDS(stringr::str_glue("~/{.string}"))
}
test2(diamonds.rds)
#> # A tibble: 53,940 x 10
#> carat cut color clarity depth table price x y z
#> <dbl> <ord> <ord> <ord> <dbl> <dbl> <int> <dbl> <dbl> <dbl>
#> 1 0.23 Ideal E SI2 61.5 55 326 3.95 3.98 2.43
#> 2 0.21 Premium E SI1 59.8 61 326 3.89 3.84 2.31
#> 3 0.23 Good E VS1 56.9 65 327 4.05 4.07 2.31
#> 4 0.29 Premium I VS2 62.4 58 334 4.2 4.23 2.63
#> 5 0.31 Good J SI2 63.3 58 335 4.34 4.35 2.75
#> 6 0.24 Very Good J VVS2 62.8 57 336 3.94 3.96 2.48
#> 7 0.24 Very Good I VVS1 62.3 57 336 3.95 3.98 2.47
#> 8 0.26 Very Good H SI1 61.9 55 337 4.07 4.11 2.53
#> 9 0.22 Fair E VS2 65.1 61 337 3.87 3.78 2.49
#> 10 0.23 Very Good H VS1 59.4 61 338 4 4.05 2.39
#> # … with 53,930 more rows
由reprex 包于 2021-06-28 创建 (v2.0.0 )
推荐阅读
- javascript - 为什么这个简单的代码会出错?
- sql-server - 从另一张桌子订购
- r - 定义 `(<-` 运算符时获取 x 的名称
- python - Pandas DataFrame 计算两列中非无元素的数量
- angularjs - 仅用图标替换 Kendogrid 命令按钮
- sql-server - 连接两个选择查询以在同一表中的一行中显示结果
- c# - Asp.Net Core 2.1.1 视图上的随机 NullReferenceException
- excel - 在数据透视表中为多个时间列分组时间
- angular - Ionin 3 - NavParams 出现未定义的错误
- authentication - 我应该只在应用程序或 Apache 上设置 Keycloak