簡體   English   中英

根據 R 中另一列的字符串字符值創建新列並賦值

[英]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.

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