Tips:read.系列函数,参数通用,不同函数的默认值有所不同。read.delim()读取txt文件,报错比table少。
test <- read.csv("ex3.csv")#读取文件并赋值给test。
test
class("ex3.csv")#返回结果是字符串。
class(test)#判断test是什么数据类型。
失败的表现是报错或意外的结果,一定要多检查分析流程中数据是否正确。
#1.读取ex1.txt
ex1 <- read.table("ex1.txt")#行名和列名被归到第一行第一列,查找帮助文档有解决方案。
ex1[2,4]
ex1 <- read.table("ex1.txt",header = T)
复习知识:data.frame的一列只能有一种数据类型
重点参数:header、check.names、row.names
#2.读取ex2.csv
ex2 <- read.csv("ex2.csv")#行名和列名没有正确归位,转化成矩阵时会发生数值型转变成字符型。
ex2
ex3 <- read.csv("ex2.csv",row.names = 1,check.names = F)#比较方便转化成矩阵
数据框不允许重复的行名。
#注意:数据框不允许重复的行名
rod = read.csv("rod.csv",row.names = 1)#有重复值,无法设置第一行为行名
rod = read.csv("rod.csv")
?read.csv
#用data.table来读取,无法设置行名
library(data.table)
ex1 = fread("ex1.txt")
class(ex1)
ex1 = fread("ex1.txt",data.table = F)
class(ex1)
ex2 = fread("ex2.csv",data.table = F)
class(ex2)
#不支持直接设置行名
library(tibble)
ex2 = column_to_rownames(ex2,"V1")
#rio
library(rio)
#一个函数支持读取很多格式,见帮助文档
?rio
ex1 = import("ex1.txt")
class(ex1)
#一个函数支持导出很多格式,见帮助文档
export(ex1,file = "ex1.xlsx")
library(rio)
gz1 <- import("GSE217012_Normalized_RPKM_LOG2_matrix.txt.gz")
class(gz1)
load("y.Rdata")
class(y)#矩阵
y
mean(y$gene1)#出现报错,小tips:数据框如果有两种数据类型,转矩阵会出现问题。
y[,1]
mean(as.numeric(y[,1]))#正确,老师的讲解
y[,1] = as.numeric(y[,1])#运行后依然是字符型,因为矩阵只允许一种数据类型,没有办法修改某一列某一行甚至某个元素的数据类型,要改除非整个矩阵一起改。
#我的答案
export(y,file = "y.txt")
aa2 <- import("y.txt")
class(aa2)
mean(aa2$gene1)
一定要经常检查数据又没有问题
#1.基础包 略显陈旧 了解一下
plot(iris[,1],iris[,3],col = iris[,5])
text(6.5,4, labels = 'hello')
dev.off() #关闭画板
#2.ggplot2 中坚力量,语法有个性
library(ggplot2)
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,
y = Petal.Length,
color = Species))
#3.ggpubr 新手友好型 ggplot2简化和美化 褒贬不一
library(ggpubr)
ggscatter(iris,
x="Sepal.Length",
y="Petal.Length",
color="Species")
ggplot(data = <DATA>)+<geom_function>(mapping = aes(<MAPPINGS>))模板
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,y = Petal.Length),
colors = "blue")
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,y = Petal.Length),
size = 5,
alpha = 0.5,
shape = 8)
#size = 5:点的大小5;alpha = 0.5:透明度50%;shape = 8:点的形状。
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,y = Petal.Length),
colors = "blue")#颜色设置设定,color是geom_point函数参数
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,y = Petal.Length,
colors=species))
#颜色设置映射到iris数据框的species列,color是aes函数参数
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,
y = Petal.Length,
color = Species))+
scale_color_manual(values = c("blue","grey","red"))
网上有教程
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,
y = Petal.Length,
color = Species))+
scale_color_brewer(paletter = "set1")
### Q2-1 空心形状和实心形状都用color设置颜色
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,
y = Petal.Length,
color = Species),
shape = 17) #17号,实心的例子
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,
y = Petal.Length,
color = Species),
shape = 2) #2号,空心的例子
### Q2-2 既有边框又有内心的,才需要color和fill两个参数
ggplot(data = iris)+
geom_point(mapping = aes(x = Sepal.Length,
y = Petal.Length,
color = Species),
shape = 24,
fill = "black") #24号,双色的例子
load("test.Rdata")
ggplot(test)+
geom_point(aes(x= a,y = b,color = change))
ggplot(test)+
geom_point(aes(x= a,y = b,color = change))+
scale_color_manual(values = c("darkgreen","grey","red"))
保存在幕布中。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。