【发布时间】:2022-01-19 02:15:07
【问题描述】:
假设,我有以下my_dt 数据表:
| neutrons | spectrum | geography |
|---|---|---|
| 2.30 | -1.2 | KIEL |
| 2.54 | -1.6 | KIEL |
| 2.56 | -0.9 | JUNG |
| 2.31 | -0.3 | ANT |
我还有以下命名列表 (my_list):
> my_list
$particles
[1] "neutrons"
$station
[1] NA
$energy
[1] "spectrum"
$area
[1] "geography"
$gamma
[1] NA
此列表的值对应于我的数据集中的列名称(如果它们存在,如果它们不存在 - NA)。
根据我的数据集和此列表,我需要检查 my_dt 中存在哪些列并重命名它们(基于 my_list 名称),对于 NA 值 - 我需要创建填充有 NAs 的列。
所以,我想获取以下数据集:
>final_dt
| particles | station | energy | area | gamma |
|---|---|---|---|---|
| 2.30 | NA | -1.2 | KIEL | NA |
| 2.54 | NA | -1.6 | KIEL | NA |
| 2.56 | NA | -0.9 | JUNG | NA |
| 2.31 | NA | -0.3 | ANT | NA |
我尝试使用 apply 系列函数来实现这一点,但目前我无法获得我想要的。
所以,如果有任何帮助,我将不胜感激!
【问题讨论】:
标签: r list data.table apply