---标题:“1. r”介绍作者:“sonali arora”输出:生物陶瓷:: html_document:toc:true toc_depth:2小插图:>%\ vignetteIndexentry {1。Biocumon}%\ vignetteengine {knitr :: Rarmardown} ---```{R样式,echo = false,结果='asis'} biocstyle :: markdown()选项(width = 100,max.print = 1000)选项(usingfancyquotes = false)knitr :: opts_chunk $ set(eval = As.Logical(sys.getenv(“knitr_eval”,“true”)),cache = as.logical(sys.getenv(“knitr_cache”,“true“)),error = false)```作者:sonali arora(sarora@fredhutch.org.
日期:2015年7月20日至24日
本课程中的材料需要R版本3.2.1和Biocumon V9.2 ## R - http://r-project.org - 开源,统计编程语言;广泛用于学术界,金融,制药。。。- 核心语言,“基础”和> 4000贡献的软件包 - 交互式会话,脚本,包,基础R中的有用功能--` dir`,`list.files` - list文件 - `read.table`,`scan` -将数据读入R - `C`,`factor`,`data.frame`,`矩阵` - 创建载体,data.frame和矩阵来存储数据 - `summary`,`表`,`xtabs` - 概述或交叉- 制定数据。- “绘图” - 绘制数据以可视化IT - “匹配”,“”%“,”百分比“,”哪个“ - 在另一个”的“哪个”中找到一个传染媒介的元素“。- “分裂”,“剪切” - “分”或“剪裁”。- 'strsplit`,`grep`,`sub` - 操作字符向量。- “Lapply`,`sapply`,`mapply` - 将功能应用于列表元素。 - `t.test`, `lm`, `anova` - Compare two or several groups. - `dist` , `hclust` - Cluster Data - `biocLite`, `install.packages` - Install packages in R from online repository - `traceback`, `debug`, `browser` - debug errors ## Getting help in R - ?data.frame - methods(lm), methods(class=class(fit)) - ?"plot “ - 帮助(包=”Biostrings“) - Vignette(包=”Genomicranges“) - StackOverFlow; R-Well邮寄列表## R - vectors中的数据类型 - 逻辑,整数,数字,字符。。。 - 列表() - 包含其他向量(递归) - 因子(),na - 统计概念 - 可以命名 - c(西雅图= 1,portland = 2) - matrix(),array() - 带有'dim'属性的向量。- data.frame() - 类似的电子表格;相等长度向量列表。 - 列中的均匀类型,跨列的异源类型。 - 其他类 - vectors的更复杂排列。 - 示例 - LM()返回的值; -the DNAStringSet class used to hold DNA sequences. - plain, 'accessor', 'generic', and 'method' functions - Packages - base, recommended, contributed. ## R programming concepts - Functions - built-in (e.g., rnorm()); user-defined ```{r} mean(1:10) rnorm(1:10) summary(rnorm(1:10)) ``` - Subsetting - logical, numeric, character; ```{r} data(iris) # find those rows where petal.width is exactly 0.2 iris[iris$Petal.Width==0.2,] # find those rows where sepal.length is less than 4.5 iris[iris$Sepal.Length < 4.5,] # find all rows belonging to setosa setosa_iris = iris[iris$Species=="setosa",] dim(setosa_iris) head(setosa_iris) ``` - Iteration - over vector elements, lapply(), mapply(), apply() ```{r} # drop the column containing characters i.e., Species iris <- iris[,!( names(iris) %in% "Species")] dim(iris) # find the mean of the first 4 numerical columns lapply(iris, mean) # simpler: colMeans(iris) # simplify the result sapply(iris, mean) # find the mean for each row. apply(iris, 1 , mean) #simpler : rowMeans(iris) ``` ## R as a Statistical Computing Environment ```{r} # define a vector x <- rnorm(1000) # vectorized calculation y <- x + rnorm(1000, sd=.8) # object construction df <- data.frame(x=x, y=y) # linear model fit <- lm(y ~ x, df) ``` ## Visualizing Data in R ```{r} par(mfrow=c(1,2)) plot(y ~ x, df, cex.lab=2) abline(fit, col="red", lwd=2) library(ggplot2) ggplot(df, aes(x, y)) + geom_point() + stat_smooth(method="lm") ``` ## `sessionInfo()` ```{r sessionInfo} sessionInfo() ```