[英]Create new column and assign value based on string character value of another column in R
我有一個 dataframe ,其中一列是 4 位數字,我需要創建另一列,但基於第二個字符串字符值。
如果字符串值為 0,則新列數據應為“M” 如果字符串值為 1,則新列數據應為“A” 如果字符串值為 2 或 3,則新列數據應為“B”如果字符串值為 4 或 5,則新列數據將為“C” 如果字符串值為 6 或 7,則新列數據將為“D”
我正在使用這段代碼,但它不太正確... db[substr(code, 2, 2) %in% 0:1, c('edu'):=.('A')]
代碼 | 教育 |
---|---|
0132 | 米 |
0045 | 一個 |
2341 | 乙 |
3267 | 乙 |
在基礎 R 中:
transform(df, edu = setNames(rep(LETTERS[1:4], each=2),0:7)[substr(code, 2, 2)])
code edu
1 0132 A
0 0045 A
3 2341 B
2 3267 B
df <- structure(list(code = c("0132", "0045", "2341", "3267")), class = "data.frame", row.names = c(NA,
-4L))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.