match(x, table, nomatch = NA_integer_, incomparables = NULL)

x: 向量, 要匹配的值;
table: 向量, 被匹配的值;

nomatch: 没匹配上的返回值, 必须是整数;
incomparables: 指定不能用来匹配的值.

> match(c(1,3,6),c("1","3","6","we"))
[1] 1 2 3

pmatch(x, table, nomatch = NA_integer_, duplicates.ok = FALSE)
x: 向量, 要匹配的值;
table: 向量, 被匹配的值;
nomatch: 没匹配上的返回值, 必须是整数;
duplicates.ok: table里面的元素是否可以适用多次.

 pmatch函数是一个部分匹配函数, 依次从x里面挑出元素, 对照table进行匹配,
若匹配上则剔除匹配上的值, 不再参与下次匹配, duplicate.ok可设置是否剔除;

 对于某一个元素, 匹配一共分成三步:
1. 如果可以完全匹配, 则认为匹配上了, 返回table中的位置;
2. 不满足上述条件, 如果是一部分匹配, 则返回table中的位置;
3. 不满足上述条件, 则认为没有值与其匹配上.

pmatch("", "") # returns NA
pmatch("m", c("mean", "median", "mode")) # returns NA
pmatch("med", c("mean", "median", "mode")) # returns 2
> pmatch(c("", "ab", "ab"), c("abc", "ab"), dup = FALSE)
[1] NA 2 1
> pmatch(c("", "ab", "ab"), c("abc", "ab"), dup = TRUE)
[1] NA 2 2
> charmatch(c("", "ab", "ab"), c("abc", "ab"))
[1] 0 2 2

R向量匹配match和pmatch的更多相关文章

  1. BZOJ1264: [AHOI2006]基因匹配Match

    1264: [AHOI2006]基因匹配Match Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 541  Solved: 347[Submit][S ...

  2. BZOJ 1264: [AHOI2006]基因匹配Match( LCS )

    序列最大长度2w * 5 = 10w, O(n²)的LCS会T.. LCS 只有当a[i] == b[j]时, 才能更新答案, 我们可以记录n个数在第一个序列中出现的5个位置, 然后从左往右扫第二个序 ...

  3. 1264: [AHOI2006]基因匹配Match(动态规划神题)

    1264: [AHOI2006]基因匹配Match 题目:传送门 简要题意: 给出两个序列.每个序列都由n种不同的数字组成,保证每个序列种每种数字都会出现5次(位置不一定一样),也就是序列长度为5*n ...

  4. 1264: [AHOI2006]基因匹配Match

    1264: [AHOI2006]基因匹配Match Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 982  Solved: 635[Submit][S ...

  5. bzoj 1264 [AHOI2006]基因匹配Match(DP+树状数组)

    1264: [AHOI2006]基因匹配Match Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 793  Solved: 503[Submit][S ...

  6. Matlab、R向量与矩阵操作 z

    已有 1849 次阅读 2012-8-2 15:15 |系统分类:科研笔记|关键词:矩阵 480 window border center Matlab.R向量与矩阵操作   描    述 Matla ...

  7. bzoj 1264: [AHOI2006]基因匹配Match

    1264: [AHOI2006]基因匹配Match Description 基因匹配(match) 卡卡昨天晚上做梦梦见他和可可来到了另外一个星球,这个星球上生物的DNA序列由无数种碱基排列而成(地球 ...

  8. 【BZOJ1264】[AHOI2006]基因匹配Match DP+树状数组

    [BZOJ1264][AHOI2006]基因匹配Match Description 基因匹配(match) 卡卡昨天晚上做梦梦见他和可可来到了另外一个星球,这个星球上生物的DNA序列由无数种碱基排列而 ...

  9. Matlab、R向量与矩阵操作

    Matlab.R向量与矩阵操作   描    述 Matlab R 1 建立行向量v=[1 2  3 4] v=[1 2 3 4] v<-c(1,2,3,4)或v<-scan(),然后输入 ...

随机推荐

  1. js类型转换 之 转数字类型

    手动将各类型 转换成 数字类型 JS提供了三种方法: Number(object); parseInt(string, radix); parseFloat(string, radix). 三种方法具 ...

  2. Python:基本运算、基本函数(包括复数)、Math模块、NumPy模块

    基本运算 x**2 : x^2 若x是mat矩阵,那就表示x内每个元素求平方 inf:表示正无穷 逻辑运算符:and,or,not 字典的get方法 a.get(k,d) 1 1 get相当于一条if ...

  3. Git:如何为项目设置自己的user name/email

    在项目根目录下查找  .git/config . 打开,添加如下内容(值换成你自己的名字和邮箱)即可: [user] name = Larry email = larry_zeal@163.com

  4. Spring细粒度控制扫描Bean

    接Spring 依赖注入(DI)的注解 <context:component-scan base-package="" resource-pattern="**/* ...

  5. e577. Enabling Antialiasing

    // See e575 The Quintessential Drawing Program public void paint(Graphics g) { // Retrieve the graph ...

  6. 图像边缘检測--OpenCV之cvCanny函数

    图像边缘检測--OpenCV之cvCanny函数 分类: C/C++ void cvCanny( const CvArr* image, CvArr* edges, double threshold1 ...

  7. centos6.5的软件安装,用户管理等

    1.软件的安装命令: 第一种:以 软件名.rpm 为结尾的二进制文件,这样的文件的安装 rpm -ivh 软件名.rpm i 是 install v 是校验 h 进度 卸载软件 是 rpm -e 软件 ...

  8. CleanMyMac 4破解版-最强中文版_破解版_激活码_注册码

    最新版CleanMyMac 4中文版本已经发布了,也受到了广大用户的喜爱.众所周知, 注册码是开启软件的钥匙,在获取软件安装包之后需要有效的注册码才能激活软件.但是关于CleanMyMac 4注册码的 ...

  9. PHP 获取图像信息 getimagesize函数

    getimagesize() 函数用于获取图像大小及相关信息,成功返回一个数组,失败则返回 FALSE 并产生一条 E_WARNING 级的错误信息. 语法:array  getimagesize(s ...

  10. struts2零配置參考演示样例

    <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2 ...