我想通过在dt2
中搜索匹配的名称来替换col_name_dt1
中的列名,然后将其与col_name_masked
中的内容重新对齐。我想我可以用某种方式使用match
commad?
> col_name_dt1
col_name col_name_masked
1 1_JH 1
2 107_MAE 4
3 108_IME 3
4 109_GW 2
> colnames(dt2)
[1] "1_JH" "107_MAE" "108_IME" "109_GW"
注意:col_name_dt1
包含的名称多于dt2
中的名称。 dt2
的长度为62,而dim(col_name_dt1)
为96。
输出
> colnames(dt2)
[1] "1" "4" "3" "2"
答案 0 :(得分:1)
尝试,
col_name_dt1$col_name_masked[match(colnames(dt2), col_name_dt1$col_name)]
#[1] 1 4 3 2