r - 在R中提取大量变量名称的有效方法
问题描述
鉴于我对 R 非常不熟悉,这可能是一个非常简单的问题。我知道通常可以使用它deparse(substitute(.))
来提取变量的名称。但是,如果我有一长串变量(假设它是没有名称的),我怎样才能有效地提取每个变量的名称?我正在考虑使用循环,但该deparse(substitute(.))
方法显然会生成我们用来表示每个项目的“通用”变量名。
示例代码:
countries<-
list(austria,belgium,czech,denmark,france,germany,italy,luxemberg,netherlands,poland,swiss)
假设我想得到countryNames
equals to list("austria","belgium",...,"swiss")
,我应该如何编码?我尝试使用 生成列表countries <- list(countryA = countryA, countryB = countryB, ...)
,但它非常乏味,在某些情况下,我可能只有来自其他地方的未命名输入列表。
解决方案
countries
只会有每个单独对象的值(austria
等belgium
)。要访问名称,您需要在创建时创建一个命名列表countries
,可以这样做:
countries <- list(austria = austria,belgium = belgium....)
但是,如果这非常繁琐,您可以使用tibble::lst
它自动创建名称而无需明确提及它们。
countries <- tibble::lst(austria,belgium....)
在这两种情况下,您都可以使用names(countries)
.
推荐阅读
- c - 有没有办法将 0.15 转换为 15
- python - 如何创建具有 2 维的单个向量?
- python - 如何从另一个列表中的一个元素中减去列表中的所有元素?
- android - 如果我打开应用程序,Jitsi 画中画(PiP)模式会在颤动中创建新实例
- r - 如何在 R 中绑定列表
- r - R中是否有合并2个向量的特定函数
- java - 如何在 Spring 中按另一个实体的属性排序?
- python - 安装 CUDA 后无法检测 GPU
- javascript - 为什么 sprite.tintBottomLeft 在移相器 3 中返回错误的颜色?
- flutter - Flutter - 任务“:app:multiDexListDebug”执行失败