1
創建一個新的專欄中,我有類似下面的數據表:模式匹配中的R
library(data.table)
DF <- as.data.table(list(ID = c(125534,"122-343",312343,"12343-343FGV", 1234, 713827), Product = c('Y', NA, NA, 'Z', NA, NA), Type = c(NA, 'D', 'G', NA, NA, NA)))
ID Product Type
1: 125534 Y NA
2: 122-343 NA D
3: 312343 NA G
4: 12343-343FGV Z NA
5: 1234 NA NA
6: 713827 NA NA
我想創建一個基於ID是如何分類的一個新的命名列類別。 我的不正確的代碼如下所示:
DF$CATEGORY <- ifelse(grepl("^12[0-9]|^31[0-9]|", DF$ID), 'IN', 'OUT')
期望的結果:
ID Product Type CATEGORY
1: 125534 Y NA IN
2: 122-343 NA D OUT
3: 312343 NA G IN
4: 12343-343FGV Z NA OUT
5: 1234 NA NA OUT
6: 713827 NA NA OUT
我需要編寫它,以便用字母或符號,超過6個字符短,不與開頭的ID 12或31出局。其餘的是在
這是完美的。謝謝! – flightless13wings