r - 基于向量序列用 NA 填充行
问题描述
我有以下内容data.frame
:
df=data.frame(x=c(1:3,8:10,15),y=rnorm(7))
x y
1 0.05976784
2 -1.01992023
3 -1.16075185
8 0.48641141
9 0.54460423
10 -0.59915799
15 -0.60785783
我只需要按照df$x
从 1 到 17 的顺序用 NA 填充行。
这是我的预期输出:
x y
1 0.05976784
2 -1.01992023
3 -1.16075185
4 NA
5 NA
6 NA
7 NA
8 0.48641141
9 0.54460423
10 -0.59915799
11 NA
12 NA
13 NA
14 NA
15 -0.60785783
16 NA
17 NA
我怎样才能做到这一点?有什么建议吗?
解决方案
使用base::match
:
data.frame(x=1:17, df$y[match(1:17, df$x)])
推荐阅读
- aes - 在 Cryptojs 中:AES 如何从密码中生成密钥?
- linux - CX_Freeze:由于 GLIBC 不兼容,Arch Linux 的可执行文件无法在 Ubuntu 20.04 上运行
- sql - Oracle SQL - 查找自动增量列的原始 ID
- mysql - 用于 INSERT IGNORE 的 MySQL 继续错误处理程序
- javascript - 如何在获取 POST 请求中传递空值
- android - 是否可以在带有 kotlin 的 android 中使用 RSocket?
- python - 如何在使用 label_map_util 加载 pbtxt 文件时修复类型错误“需要类似字节的对象,而不是'str'”?
- python - 如何在python中为字符串添加括号
- python - 如何将此定义的函数调用到 mysql 查询中,以便我可以 > 进入 importdate
- excel-indirect - 间接工作表名称