将字符串的大向量与模式的大向量匹配

纳罗

我有一个非常大的数据框,其中包含一个邮政编码:

data <- data.frame(data = rnorm(n = 4),
                   code = c("1001", "1130", "2001", "9010"),
                   stringsAsFactors = F)

我还有第二个大型数据框,其中邮政编码模式映射到一个区域。

mapping <- data.frame(code = c("10*", "20*"),
                      zone = c("zone1", "zone2"), 
                      stringsAsFactors = F)

我想加入这两个表以将zone添加data数据框中,但是数据量太大,无法执行“行式” grepl。最有效的方法是什么?

皮埃尔·拉波因特

处理大型物体的最有效方法是data.table要进行联接,两个对象都需要一个公共列。substr用来获取data对象中代码列的前两位另请注意,我从中删除了“ *”,mapping因为该字符在中不存在data

library(data.table)

setDT(data)
setDT(mapping)

data[, code := substr(code, start = 1, stop = 2)]
mapping[data, on="code"]

   code  zone       data
1:   10 zone1 -1.0481912
2:   11  <NA>  1.1339476
3:   20 zone2 -0.8072921
4:   90  <NA>  1.5883562

数据

data <- data.frame(data = rnorm(n = 4),
                   code = c("1001", "1130", "2001", "9010"),
                   stringsAsFactors = F)
mapping <- data.frame(code = c("10", "20"),
                      zone = c("zone1", "zone2"), 
                      stringsAsFactors = F)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何对向量中的字符串进行模式匹配?

来自分类Dev

R - 将字符串向量与其自身匹配

来自分类Dev

字符串匹配的向量化

来自分类Dev

R将键值向量与不规则字符串向量匹配

来自分类Dev

R将字符串的一部分与字符串的向量匹配

来自分类Dev

将字符串向量转换为整数向量

来自分类Dev

Clojure - 将字符串转换为整数向量的向量

来自分类Dev

将字符串推回对象向量

来自分类Dev

使用sapply和grepl将向量与多个字符串匹配时添加标记

来自分类Dev

C ++基于子字符串的部分匹配,将字符串作为向量中的重复项删除

来自分类Dev

Clojure:将字符串的向量附加到字符串,从而产生向量

来自分类Dev

获取以模式开头的字符串中的单词向量 - R

来自分类Dev

匹配两个向量并替换为字符串

来自分类Dev

R:不匹配字符串向量的矩阵行子集

来自分类Dev

部分匹配字符串和多个向量的完全替换

来自分类Dev

模式将字符串与模板字符串匹配

来自分类Dev

将字符串字符映射到向量

来自分类Dev

分块字符串向量

来自分类Dev

字符串错误向量

来自分类Dev

替换R中的字符串,给出模式向量和替换向量

来自分类Dev

替换R中的字符串,给出模式向量和替换向量

来自分类Dev

将字符串向量中的字符串放入主字符串

来自分类Dev

子集向量/基于具有部分字符串匹配的命名向量的查找替换值

来自分类Dev

如何测试向量中的每个值是否与字符串向量中的任何值匹配?

来自分类Dev

通过使用基数R将子列表元素与字符向量的部分字符串匹配的子集R列表

来自分类Dev

将大向量分成R中的间隔

来自分类Dev

将向量转换为字符向量以提交给API时R保留字符串

来自分类Dev

将字符向量转换为新的子字符串向量

来自分类Dev

将字符串拆分为向量c ++

Related 相关文章

  1. 1

    如何对向量中的字符串进行模式匹配?

  2. 2

    R - 将字符串向量与其自身匹配

  3. 3

    字符串匹配的向量化

  4. 4

    R将键值向量与不规则字符串向量匹配

  5. 5

    R将字符串的一部分与字符串的向量匹配

  6. 6

    将字符串向量转换为整数向量

  7. 7

    Clojure - 将字符串转换为整数向量的向量

  8. 8

    将字符串推回对象向量

  9. 9

    使用sapply和grepl将向量与多个字符串匹配时添加标记

  10. 10

    C ++基于子字符串的部分匹配,将字符串作为向量中的重复项删除

  11. 11

    Clojure:将字符串的向量附加到字符串,从而产生向量

  12. 12

    获取以模式开头的字符串中的单词向量 - R

  13. 13

    匹配两个向量并替换为字符串

  14. 14

    R:不匹配字符串向量的矩阵行子集

  15. 15

    部分匹配字符串和多个向量的完全替换

  16. 16

    模式将字符串与模板字符串匹配

  17. 17

    将字符串字符映射到向量

  18. 18

    分块字符串向量

  19. 19

    字符串错误向量

  20. 20

    替换R中的字符串,给出模式向量和替换向量

  21. 21

    替换R中的字符串,给出模式向量和替换向量

  22. 22

    将字符串向量中的字符串放入主字符串

  23. 23

    子集向量/基于具有部分字符串匹配的命名向量的查找替换值

  24. 24

    如何测试向量中的每个值是否与字符串向量中的任何值匹配?

  25. 25

    通过使用基数R将子列表元素与字符向量的部分字符串匹配的子集R列表

  26. 26

    将大向量分成R中的间隔

  27. 27

    将向量转换为字符向量以提交给API时R保留字符串

  28. 28

    将字符向量转换为新的子字符串向量

  29. 29

    将字符串拆分为向量c ++

热门标签

归档