Tricks of R

来源:互联网 发布:城西银泰有mac专柜吗 编辑:程序博客网 时间:2024/06/01 18:12

 1、do.call函数

针对list里的所有元素执行某一函数,如对N个数据框执行行合并的操作
do.call(“sum”,list(2,4))
[1] 6

 2、library()如何引用变量

如果包的名字以变量传到library中,需要设置character.only = T

package <- ggplot2library(package, character.only = T)

 3、加载某个包,如没安装则安装

##character.only = T,指识别字符串## 函数作用,如果没有安装指定包,则安装并且加载~## 出现警告,打印警告信息。出现错误,打印错误信息## 对应包的名字需要以字符串形式输入load_packages <- function(package) {  tryCatch(    library(package, character.only = T),    warning = function(w) {      print(cat("出现警告", '\n', warnings()))    },    error = function(e) {      print(e)      install.packages(package)    },    finally = {      print(paste0("导入", package, "包"))      library(package, character.only = T)    }  )}

 4、加载包、移除包、卸载包、已经加载的包

library()detach("package:")remove.packages("")(.packages())cumsum

 5、查看内存占用等

# 来查看当前所有对象名ls()# 看每个变量占多大内存object.size()# 查看现在的work space的内存使用memory.size()# 查看系统规定的内存使用上限memory.limit()# 释放所有内存rm(list=ls(all=TRUE))gc(reset=TRUE)

 6、数据对象的保存和加载

save(list=c('dfTrain', 'trainWeights', 'dfTest', 'testID', 'dfSampleSubmission'),     file='./data/training_testing_data_v1.RData')load('./data/training_testing_data_V2.RData')

 7、查看当前目录下文件情况

list.files()

 8、packages安装位置

.libPaths()

 9、设置因子顺序

#增加参数设置,方便排序和展示pic_data_1$type <- factor(pic_data_1$type,order=TRUE,levels = c("申请订单","信审总计", "通过总计"))

 10、累加、累乘等

#Returns a vector whose elements are the cumulative sums, products, #minima or maxima of the elements of the argumentx <- 1:5cumsum(x)#累加#1 3 6 10 15cumprod(x)#累乘# 1 2 6 24 120cummax(x)# 1 2 3 4 5cummin(x)# 1 1 1 1 1

 11、转义符

"\n"#换行"\t"#Tab?Quotes#查看帮助

 12、画出指定函数图像,添加到原来的图形上

curve(1/1.5+2/3*x,add = T)

 13、鼠标交互式标注文字

#给图形加上文字说明text(locator(1),"abc")

 14、常看包帮助文档

help(package="mongolite")

 15、翻转函数

#元素间翻转rev(1:5)#5,4,3,2,1#元素内翻转rev(c("ABC","BCD"))#"BCD" "ABC"

 16、停止运行

# 程序停止0.5秒再运行 Sys.sleep(0.5)

 17、两个对象是否一致

# 比较奇葩的R对象的比较grep("Error",1:5) # integer(0)identical(grep("Error",1:5),integer(0)) # True

 18、取消科学计数法

options(scipen = 200)

 19、R版本更新之后,不用重新安装包

# 把老R包复制到新版本的library目录下,然后运行下面的代码update.packages(checkBuilt=TRUE, ask=FALSE) 

 20、取出字符串中所有的字母

str_extract_all("B51 B53 B55", "[A-Z]+")

 21、查看R源码

## 函数直接查看getAnywhere(函数名)## 下载源码1) http://www.r-project.org/ ,点击 Download 下的CRAN;2) 选择一个镜像;3) 里面的Source Code for all Platforms下有各种源码了,对于程序包,点packages;4) 点选择项Table of available packages, sorted by name;5) 找到要的包,点击看Package source这一项,用tar.gz封装的,下载解压后就能看见源代码了。
原创粉丝点击