積極響應國家號召,在家認真工作學習


積極響應國家號召,在家認真工作學習

R語言學習總結:

安裝地址:R語言官網下載

軟件倉庫:

CRAN ------ install.packages('name')

Bioconductor --------- source("https://bioconductor.org/biocLite.R")

biocLite('name')

GitHub --------- library(devtools)

install_github('name')

一般流程:

安裝軟件包(只需要安裝一次,其他時候直接是導入軟件包 library('包名'))

清除已有環境變量

設置工作目錄

加載軟件包

讀取文件

執行命令

結果寫入

圖片輸出

本地幫助系統

help.start()

help(heatmap) ?heatmap #得到heatmap的幫助頁面

apropos("plot") #找出幫助中有plot的函數

help.search("plot") #列出在所有幫助頁面含有plot的函數

find("plot") #得到名為plot的程序包

args("plot") #得到名為plot的自變量列表

數組

array(data=NA,dim=length(data),dimnames=NULL)

矩陣

matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)

data 為一個向量,其元素用於構建 矩陣

nrow 矩陣的行數

ncol 矩陣的列數

byrow 是否按行填充

dimnames 矩陣行列的名字

建立數據框的方法(函數)

read.table() 表格式文件

read.csv() 逗號分隔的文件

read.delim() tab鍵分隔的文件

程序運行

在R內部 source("input.R")

在命令行CMD Rscript input.R

命令行參數傳遞 commandArgs(trailingOnly=FALSE)

數據轉換 類型檢測

is.data.frame is.character is.list is.factor is.numeric

類型轉換

as.data.frame as.array as.matrix as.vector as.list

讀取數據框格式數據

read.table() #讀取混合模式列表數據

read.table(file, #數據文件名

header=FALSE, #是否表頭

sep="", #列(字段)分隔符

quote="\", #字符串標示符

dec=".", #小數點提示符

row.names, #指定行名

col.names, #指定列名

na.strings="NA", #缺省值提示符

comment.char="#" # 註釋標示符

rt

str(rt)

write.table() #數據的存儲

write.table(x,

file="data.txt",

ncolumns=if(is.character(x)) 1 else 5,

append=FALSE)

高級繪圖函數

plot(x) 以x的元素值為縱座標,以序號為橫座標繪圖

plot(x,y) x與y的二元作圖

pie(x) 餅圖

boxplot(x) 盒形圖 也稱箱線圖

hist(x) x的頻率直方圖

barplot(x) x的值得條形圖

pairs(x) 如果x是矩陣或者數據框

coplot(x~y|z) 做x的各列之間的二元圖,關於z的每個數值(或數值區間)的繪製

matplot(x,y) 二元圖 其中x的第一列對應y的第一列

qqnorm(x) 正態分位數--分位數圖

images(x,y,z) x,y,z三元圖

heatmap(x) 熱圖

共同參數選項

add=FALSE

axes=TRUE

TYPE="p" 指定圖形的類型,“p”: 點 "l":線 "b":點連線 "o":同上,但是點在線上 "h":垂直線 "s":階梯式,垂直線頂端顯示數據 "S":同上,但是是垂直線低端顯示數據;

xlim=,ylim= 指定軸的顯示範圍

xlab,ylab= 座標軸的標籤

main 主標題

sub 副標題

低級繪圖函數

points(x,y) 添加點

lines(x,y)text(x,y,tables,...) 添加線

mtext(text,side=3,line=0,.....) 在(x,y)處添加用labels指定的文字

segment(x0,y0,x1,y1) 從(x0,y0)各點到(x1,y1)各點曲線段

arrows(x0,y0,x1,y1) 同上,而且添加箭頭

abline(a,b) 繪製斜率為b和截距為a的直線

abline(h=y) 在縱座標處畫水平線

abline(v=x) 在橫座標x處畫垂直線

abline(lm,obj) 畫出lm,obj確定的迴歸線

rect(x1,y1,x2,y2) 繪製長方形,(x1,y1)為左下角,(x2,y2)為右上角

polygon(x,y) 繪製鏈接x,y座標確定的點的多邊形

legend(x,y) 在點(x,y)處添加圖例,說明內容有legend的給定

title() 添加標題,也可添加一個副標題

axis(side,vect) 畫座標軸

box() 在當前的圖上加邊框

rug(x) 在x軸上用短線畫出x數據的位置

locator(n,type="n",...) 獲取鼠標在圖中點擊處的座標

繪圖參數介紹 help(par)

adj 控制關於文字對齊方式

bg 背景色

bty 圖形邊框形狀

cex 符號和文字的大小 cex.axis cex.lab cex.main cex.sub

col 顏色 col.axis col.lab col.main col.sub

font 文字字體 font.axis font.lab font.mian font.sub

las 座標軸刻度數字標記方向

lty 連線的線性

lwd 線的寬度

mar 圖形邊空的大小

mfcol,mfrow c(nr,nc)的向量,前者按列分割繪圖窗口,後者按行分割繪圖窗口

pch 繪製符號的類型

ps 文字大小

pty 繪圖區域類型

tck 軸刻度長度,tck=1時,則繪製grid

xaxt,yaxt 如果xaxt="n",設置x軸不顯示,如果yaxt="n",設置Y軸不顯示

圖片輸出方式

直接輸入繪圖命令,一般直接打印到屏幕或者plots窗口

位圖

png(file="out.png",height=800,width=600,units="px",res=72)

繪圖命令

dev.off()

矢量圖

pdf(file="out.pdf",height=8,width=6)

繪圖命令

dev.off()

pdf尺寸單位是inch(英寸)

help(par)

par(mgp=c(1.6,0.6,0),mar=c(3,3,2,1))

x=1:10;y=1:10

cex_type=c(0.7,0.8,0.9,1,2,3,4,5,6,7)

plot(x,y,col="blue",pch=16,

cex=cex_type, #繪圖符號大小,1是正常大小

cex.axis=1.1, #座標軸刻度數字大小

cex.lab=1.2, #座標軸標籤大小

cex.sub=1.3, #副標題文字大小

cex.main=1.4, #標題文字大小

font.axis=3, #座標軸刻度字體 斜體

font.lab=2, #座標軸標籤字體 粗體

font.main=4, #標題字體,粗斜體

font.sub=1, #副標題字體 正常

main="字體",

xlim=c(1,12),ylim=c(1,12))

text(x,y,adj=0,labels=paste("cex=",cex_type),col = "red",cex = 1.2,font = 3)


par(mgp=c(1.6,0.6,0),mar=c(3,3,2,1))

pch_type=c(1:5,15:19)

col_type=c(1:10)

x=1:10;y=rep(6,10)

plot(x,y,pch=pch_type,col=col_type,cex=2,main="pch",font.lab=2)

text(x,y,adj=-0.5,col=col_type,labels=paste("pch=",pch_type),srt=90)


分享到:


相關文章: