R语言-查找表

来源:互联网 发布:计算机数据单位 编辑:程序博客网 时间:2024/06/13 21:18

有时候我们会碰到一些离散的条件,并根据条件进行相应的操作。我们下意识地会选择if树来实现,即通过很多if,else if条件来控制操作,如这样一组条件

if  name     then  a  =="张三"        ==0  =="李四"        ==1  =="王五"        ==2  =="赵六"        ==3

常用的实现方式为:

if(name=="张三")}{    a=0}else if(name=="李四"){    a=1}……

显然代码过于繁琐,且不利于观看,此时我们可以将条件作为名称属性赋给结果向量,形成查找表(lookup table)进而简洁的获取赋值结果:

payouts<-c("张三"=0,"李四"=1,"王五"=2,"赵六"=3)a=unname(payouts[name]) #unname返回对象的副本,但会将名称属性去除
原创粉丝点击