其基本思想就是把百分数按照字符处理,首先将“%”与数字分离,然后再将数除以100,就可以化成小数了。下面两种方法的区别一个是将%替换成空格,一个是提取除
百分号的数字。>testdata<-data.frame(v1=c("78%", "65%", "32%"), v2=c("43%", "56%", "23%"))>testnewdata1<-data.frame(lapply(testdata, function(x) as.numeric(sub("%", "", x))/100) )>testnewdata1v1 v21 0.78 0.432 0.65 0.563 0.32 0.23>library(stringr)>testnewdata2<-data.frame(lapply(testdata, function(x) as.numeric(str_extract(x,'[0-9.]+'))/100) )>testnewdata2v1 v21 0.78 0.432 0.65 0.563 0.32 0.23 替换百分号的思想还可以用下面的代码实现>testnewdata3<-data.frame(lapply(testdata, function(x) as.numeric(gsub("\\%", "", x))/100))>testnewdata3v1 v21 0.78 0.432 0.65 0.563 0.32 0.23定义
函数oddcount,计算给定数列中的
奇数的个数
对于上述案例,我们是想告诉r,我们定义了一个名叫 oddcount 函数 function(x);
该函数的自变量是x,作用是判断函数自变量 x 是不是奇数;
判断依据:n %% 2 == 1;若是,要求计数器 k 加 1 ;
要求返回的是k;
计数(1,3,5) # 可以看到共有3个奇数;
返回值为:3;
第2组数有5个,其中,2是偶数;
返回值:4;
尝试返回偶数的个数,具体过程如下:
好了,我的小伙伴们,今天就先到这儿吧,下期见!O(∩_∩)O哈哈~
应该 自己定义一个函数,如下:
xtoy<-function(x){
if (x<0){
y=1-x
}
if (x>0){
y=1+x
}else{ stop("x的域没有定义为0")}
}
上面的代码在R中运行后
你要用的时候就:xtoy(某个数)