R语言小入门
目录
R语言的更新
updateR()
R包的安装
install.packages("pheatmap")
或
require(pheatmap) #load/install+load 包
Bioconductor的使用
options(BioC_mirror="http://mirrors.ustc.edu.cn/bioc/") #设置Bio镜像
BiocManager::install("preprocessCore")
查看帮助
help(plot)
或
?pheatmap
清除命令窗内容
ctrl+L
清除工作空间的内存变量
rm(data)
rm(list=ls()) #清除所有变量
载入包
library(pheatmap)
工作路径的获取和设置
getwd() #获取当前工作路径
setwd() #设置工作路径
查看对象类型
class(obj) #向量(Vertor),数据框(Frame),矩阵(Matrix),因子(Factor)。
mode(obj) #逻辑型(Logical)、数值型(Numeric)、字符型(Character)。(因子型在mode函数下返回数值型)
#数据框的模式是list,类是data.frame。
> mylist = list(a = c(1,2,3),b = c('a','b','c'),c = c(TRUE,FALSE),d = factor('house'));
> sapply(mylist,mode) #列表允许多种模式的数据,若想获得各个组成部分的模式和类时,可以使用sapply函数。
a b c d
"numeric" "character" "logical" "numeric"
> sapply(mylist,class)
a b c d
"numeric" "character" "logical" "factor"
# 数据模式之间的转换:
as.character(a) #转换为字符型
as.numeric(b) #字符型转换数值型
as.logical(x) #字符型转换逻辑型
# 数据类型的检测:
is.numeric(a) #返回True/False
is.character(b)
is.logical(c)
is.factor(d)
typeof(obj)
组合向量
C = c(向量1,向量2,向量...)
载入csv文件
lines<-readLines('XX.csv') #获取数据的行数
dataframe <-read.table("file_path", #Windows下路径要用斜杠'/'或者双反斜杠'\\'
header=TRUE,
sep=",", ##变量间分割方式,CSV 为逗号分隔
stringAsFactors=FALSE, #防止字符型数据读入时自动转换为因子
fileEncoding='utf-8', #编码
comment.char='', #指定读取文件中的注释字符,注释字符及其后不会被读取。
nrows=10, #读取前10行数据和header
skip=2, ##跳过前两行和header
strip.white = FALSE, #去掉每个变量值首位的空白
na.strings = "", #na.strings = c("NA","") 把所有想变成NA的量都写在c()向量里。
blank.lines.skip = TRUE, #跳过空白行?
fill = TRUE, #当各列变量数不一样时是否填补,默认为TRUE。注意补充的类型与读取文件后,程序判定的列变量类型有关,如果列变量是数字会用NA,如果是字符则会用"",不会用NULL填补也不能用is.null()检查。
)
或
dataframe = read.csv("file_path", header = True) #该函数其实是封装的read.table函数,同时设置read.table函数的sep参数为逗号(",")。
# 将第一列设为行名
rownames(dataframe) = dataframe[,1] #取出第一列并设为行名
dataframe = dataframe[,-1] #删除第一列
读取Excel文件
library(readxl) #readxl包
dataframe = read_excel("excel.xls",
sheet="data", #或sheet=2指定sheet名或者数字
na = "NA", # If NAs are represented by something other than blank cells, set the na argument
)
导出csv文件
write.csv(data,
file = "fiel_path",
sep = ",",
na = "NA", #na为制定缺失值由什么代替
quote = TRUE, #quote=FALSE:消除字符串 分类变量 的引号标志
dec = ".",
append= FALSE, #append=FALSE:为写入到新的文件里,TRUE为追加到已有文件。
)
写入剪切板
write.table(data,"clipboard",sep="\t",col.names=NA,) #将 data 写入内存剪切板,ctrl+v 可得
导出图片
# 导出jpeg格式
jpeg("file_name.jpeg",width = 700,height = 290) #开启图形设备
plot() # 绘图代码
dev.off() #关闭图像设备,同时储存图片
# 导出svg格式
svg("file_name.svg",width = 700, height = 200)
pheatmap(data) #绘图代码
dev.off()
# 其余导出pdf、png等方法类似
提取行名和列名
rownames(dataframe) # 以列表形式返回行名
colnames(dataframe) # 以列表形式返回列名
导出和读取R对象
# 单个R对象的导出和读取————.rds
saveRDS(data, file = "file_name.rds")
data <- readRDS(file = "file_name.rds") #还原对象的对象名称不必与存储对象时的对象名称相同。
# 多个R对象的导出和读取————.Rdata
save(data_1, data_2, file = "file_name.Rdata")
load("file_name.Rdata")

浙公网安备 33010602011771号