r - 在 r 中创建具有特定顺序的变量名
问题描述
我想得到一些具有特定顺序的变量名,像这样
I0.n, I0.man, I0.woman, I0.low65, I0.up65
I1.n, I1.man, I1.woman, I1.low65, I1.up65
…………
I99.n, I99.man, I99.woman, I99.low65, I99.up65
我尝试了一种方法但失败了
num <- sprintf('%02d',0:99)
index <- c('n', 'man', 'woman', 'low65', 'up65')
vars <- paste0('I', num, '.', index)
有没有一种有效的方法来创建具有特定顺序的变量名?
任何帮助将不胜感激!
解决方案
正如 建议的@MrFlick
那样,实现此目的的一种简单而紧凑的方法是使用以下代码:
data <- with(expand.grid(index=index, num=num), paste0('I', num, '.', index))
> data
[1] "I00.n" "I00.man" "I00.woman" "I00.low65" "I00.up65" "I01.n" "I01.man" "I01.woman"
[9] "I01.low65" "I01.up65" "I02.n" "I02.man" "I02.woman" "I02.low65" "I02.up65" "I03.n"
...
[497] "I99.man" "I99.woman" "I99.low65" "I99.up65"
希望这可以帮助。
推荐阅读
- jenkins - how to email html report of Jmeter execution via Jenkins the one which we get using -e -o in command line?
- java - Why my DP algo for Longest Palindromic Substring is slow
- javascript - Google Chrome: Accessing window.opener for target="_blank" link after rel="noopener" is the new default
- php - API with bearer and query params options
- python - 如何将二维高斯从笛卡尔坐标转换为极坐标?
- python - 二叉树的最大深度——我们是否需要一个“持有者”来跟踪当前的最大深度?
- python - 'KeyedVectors' 对象没有属性 'wv' / 词汇属性已从 Gensim 4.0.0 中的 KeyedVector 中删除
- kubernetes - GCP GKE - 具有 2 个暴露端口的同一应用程序的原生 GKE 入口的健康检查
- c# - c#如何调用另一个类的列表
- ssis - [OData Source [516]] 错误:OData 源无法处理数据。来自 HRESULT 的异常:0xC0047072 SSIS 错误 DTS_E_PRIMEOUTPUTFAILED