修改R中DT名称的特定部分
Modifying a specific part of the name of a DT in R
我有以下DT
structure(list(HKU47_PSG_1_HW_0.txt = 66611.1718226969, HKU47_PSG_1_HW_1.txt = 66254.5524579138,
HKU47_PSG_1_HW_2.txt = 66972.3593176305, HKU47_PSG_1_HW_3.txt = 68419.8681965619,
HKU47_PSG_1_HW_4.txt = 66841.3761239946, HKU47_PSG_1_HW_5.txt = 66196.5383069813), .Names = c("HKU47_PSG_1_HW_0.txt",
"HKU47_PSG_1_HW_1.txt", "HKU47_PSG_1_HW_2.txt", "HKU47_PSG_1_HW_3.txt",
"HKU47_PSG_1_HW_4.txt", "HKU47_PSG_1_HW_5.txt"), row.names = c(NA,
-1L), class = c("data.table", "data.frame"), .internal.selfref = <pointer: 0x0000000000100788>)
我想克隆这个 DT,从每个列名中取消这部分文本 HW_
和 .txt.
我需要类似 names(data) <- c("new_name", "another_new_name")
的东西,它可以自动用于我有几个DT。我实际上并不清楚该怎么做。
您可以使用 sub
将 HW_
替换为空字符串,并将 .txt
替换为空字符串,从而有效地从名称中删除这些部分:
names(data) <- sub('HW_', '', sub('\.txt', '', names(data)))
我有以下DT
structure(list(HKU47_PSG_1_HW_0.txt = 66611.1718226969, HKU47_PSG_1_HW_1.txt = 66254.5524579138,
HKU47_PSG_1_HW_2.txt = 66972.3593176305, HKU47_PSG_1_HW_3.txt = 68419.8681965619,
HKU47_PSG_1_HW_4.txt = 66841.3761239946, HKU47_PSG_1_HW_5.txt = 66196.5383069813), .Names = c("HKU47_PSG_1_HW_0.txt",
"HKU47_PSG_1_HW_1.txt", "HKU47_PSG_1_HW_2.txt", "HKU47_PSG_1_HW_3.txt",
"HKU47_PSG_1_HW_4.txt", "HKU47_PSG_1_HW_5.txt"), row.names = c(NA,
-1L), class = c("data.table", "data.frame"), .internal.selfref = <pointer: 0x0000000000100788>)
我想克隆这个 DT,从每个列名中取消这部分文本 HW_
和 .txt.
我需要类似 names(data) <- c("new_name", "another_new_name")
的东西,它可以自动用于我有几个DT。我实际上并不清楚该怎么做。
您可以使用 sub
将 HW_
替换为空字符串,并将 .txt
替换为空字符串,从而有效地从名称中删除这些部分:
names(data) <- sub('HW_', '', sub('\.txt', '', names(data)))