我的數據集中有兩個類似名稱的變量:「JE.Description」和「Field.Description」。我如何定位「JE.Description」列的列索引,以便從RegExp搜索中排除「字段」一詞?換句話說,我想修改下面的命令,只返回「JE.Description」的列索引:R中的正則表達式 - 排除關鍵字
數據集經常更新,有時候「JE.Description」字符串顯示爲「Description 」。這就是爲什麼我尋求明確排除關鍵字「字段」的解決方案。
r1 <- c(1:5)
r2 <- c(1:5)
df <- data.frame(r1,r2)
names(df)[1] <- "JE.Description"
names(df)[2] <- "Field.Description"
y <- grep("!^Field^Description",perl = TRUE, colnames(df))
RETURNS: integer[0]
謝謝,
你能做出字符串一個簡單的例子應該和不應該匹配(也許你的一些colnames的)? – Frank
它看起來像你的模式完全按照你想要的方式工作。 'x < - c(「Description」,「Field.Description」); grep(「^ Description $」,perl = TRUE,x)'result in'[1] 1' – ndoogan
@ndoogan是的,你是對的。但我試圖找到一種方法來顯式排除正則表達式搜索中的「字段」。有時數據集顯示「說明」(在這種情況下,有問題的命令有效),而其他時間則顯示「JE.Description」。謝謝你的幫助。 – AME