簡體   English   中英

通過將值與向量中的數字進行比較來進行編碼

[英]Recode by comparing a value to numbers in a vector

我想將一列中的值編碼為另一列中的較少值。 例如,如果郵政編碼列中的值是以下c(90272,90049,90077,90210,90046,90069,90024,90025,90048,90036,90038,90028)之一,則在地區列中將其編碼為“ west” 。 我如何在R中做到這一點?

您可以使用ifelse()函數。

在數據框中設置數據:

df <- data.frame(zipcode = c(90272,90049,90077,90210,90046,90069,90024,90025,90048,90036,90038,90028))

然后使用ifelse()根據zipcode的值編碼一個新值。

df$district <- ifelse(df$zipcode %in% c(90272,90049,90077,90210,90046,90069,90024,90025,90048,90036,90038,90028),
   "west",
   NA)

> df
   zipcode region
1    90272   west
2    90049   west
3    90077   west
4    90210   west
5    90046   west
6    90069   west
7    90024   west
8    90025   west
9    90048   west
10   90036   west
11   90038   west
12   90028   west

暫無
暫無

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

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