窗口函数应用
mtcars %>% group_by(cyl) %>% mutate(rank= min_rank(desc(mpg)))
mtcars %>% group_by(cyl) %>% mutate(mpg_max = max(mpg))
原来的明细还保留,同时每个分组的统计值算出来了,是不是很方便
1.2 批量操作
同时若你嫌麻烦一个个地对变量进行操作,还可以使用mutate_each函数对数据框中的变量批量操作,通过调整funs(即functions)和vars(variables)参数控制functions的数量,以及参与变形的variables,这里控制variables的技巧与select函数相似。
#对每个变量进行排名
mtcars%>%mutate_each(funs(dense_rank))
mpg cyl disp hp drat wt qsec vs am gear carb
1 16 2 13 11 16 9 6 1 2 24
2 16 2 13 11 16 12 10 1 224
3 19 16 615 7 22 2 221
4 17 2 16 115 1624 2 111
5 13 3 23 156 18 10 1 112
#对disp的变量进行排名
mtcars%>%mutate_each(funs(dense_rank,min_rank),disp)
mpg cyl disp hp dratwt qsec vs am gear carb dense_rank min_rank
1 21.0 6 160.0 110 3.90 2.620 16.46 0 144 13 13
2 21.0 6 160.0 110 3.90 2.875 17.02 0 144 13 13
3 22.8 4 108.0 93 3.85 2.320 18.61 1 141 6 6
4 21.4 6 258.0 110 3.08 3.215 19.44 1 031 16 18
5 18.7 8 360.0 175 3.15 3.440 17.02 0 032 23 27
6 18.1 6 225.0 105 2.76 3.460 20.22 1 031 15 17
7 14.3 8 360.0 245 3.21 3.570 15.84 0 034 2327
#对除了disp的变量进行排名
mtcars%>%mutate_each(funs(dense_rank,min_rank),-disp)
2、transmute
返回值中不包含原数据集变量,只保留计算转换后的变量。
mtcars%>%mutate(wt_log=log(wt))
mtcars%>%transmute(wt_log=log(wt))
mtcars %>%mutate(displ_l = disp / 61.0237)
mtcars %>%transmute(displ_l = disp / 61.0237)
点击进入:Windows (95 and later),再点击:base,下载SetupR.exe,约18兆,此便是R FOR WINDOWS的安装程序。双击SetupR.exe,按照提示一步步安装即可。 安装完成后,程序会创建R程序组并在桌面上创建R主程序的快捷方式(也可以在安装过程中选择不要创建)。通过快捷方式运行R,便可调出R的主窗口。 类似于许多以编程方式为主要工作方式的软件,R的界面简单而朴素,只有不多的几个菜单和快捷按钮。快捷按钮下面的窗口便是命令输入窗口,它也是部分运算结果的输出窗口,有些运算结果则会输出在新建的窗口中。 主窗口上方的一些文字是刚运行R时出现的一些说明和指引。文字下的: 符号便是R的命令提示符,在其后可输出命令后的矩形是光标。R一般是采用交互方式工作的,在命令提示符后输入命令,回车后便会输出结果。“+”标示语句没有闭合,比如在循环中,在分支中,或者写函数等,分多行都会有加号;
直接键盘按Esc键退出就可以把+号去掉,恢复正常的编辑状态。清屏用快捷键Ctrl+L 就可以清除所有编辑的语句。
例如;
td<-function(fx,a,b,r){ #(fx:是表达式,方程是fx=0,变量是dux;a,b,区间[a,b],r是精度。
x<-ada<-eval(fx)
调用函数:
fx<-expression(x*x-x-1)
a<-1b<-2r<-1e-5
td(fx,a,b,r)
扩展资料:
R语言有程序的控制结构和函数function。尽管R语言是解释型语言,但是可以用编译的方式实现,调用方法是source(file.R)命令。R语言的软件包能在编程环境中,通过子菜单下载后安装,因此是无障碍的。
程序中加载软件包的命令,
>library(parallel) #并行计算软件包,单线程多核
查找软件包中所有函数,
>library(help=parallel)
>help(packet=parallel)
R语言和解释型语言一样,没有变量声明。R语言能编写c++程序,应用Rcpp软件包。
参考资料来源:百度百科-R语言编程