簡體   English   中英

正則表達式排除R中的字符串模式

[英]Regular expression to exclude a string pattern in R

請,我想通過刪除年份標簽來重命名表中的列。 這是我的列名:

"PROV_201601" "MNT_201602" "PROV_201612" .... and so on ! 

我的目標是從列名中刪除“ 2016”。 我只熟悉R,但不熟悉正則表達式。

任何幫助表示贊賞!

謝謝。

我們可以嘗試使用sub_捕獲匹配為一個組,后跟四個數字( \\\\d{4} ),並替換為捕獲組的后向引用( \\\\1 )或使用_

sub("(_)\\d{4}", "\\1", v1)
#[1] "PROV_01" "MNT_02"  "PROV_12"

如果特定於2016年,

sub("2016", "", v1)
#[1] "PROV_01" "MNT_02"  "PROV_12"

數據

v1 <- c("PROV_201601", "MNT_201602", "PROV_201612")

首先,使用sub()將所有"2016"實例替換為"" 這將消除字符串中的2016年。

col1 <- c("PROV_201601", "MNT_201602", "PROV_201612")
col2 <- sub("2016", "", col1)

現在,使用names()重命名數據框架dat列:

names(dat) <- col2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM