r语言批量go r语言批量更改数据类型

R语言批量读文件杀杀
前两天一个同学问了一个批量读数据(文件)的问题
感觉现在分析测序数据的话,在R中一次性读取多个文件的功能还是挺需要用到的
决定总结一下下
总不能写n行read.csv…balabala…去读?。?那太麻烦了
【r语言批量go r语言批量更改数据类型】于是决定使用批量读数据
首先我们要获取这个文件夹里所有的文件名字以便读取
接下来我们需要构建读文件的路径
ps: 在做这种批量操作时还是有必要先花时间测试一个样本是否能够成功,然后再去做批量的循环,这样也能方便自己找bug
因此我们先试着读取一个文件
这里因为例子中的文件格式比较特殊,所以使用的读取函数是read.delim , 如果是.csv或.txt等格式 , 也可以替换成read.csv, read.table等函数 。
好了测试通过,接下来开始批量读文件
需要注意的是,合并文件的时候,需要注意你是要取所有文件中行名的交集还是并集,或者最后你是否有一个统一的行名来规整所有文件 。(当然如果你确定每个文件的行名都是相同的 , 就可以直接cbind),我遇到过需要取交集的情况 , 可以写一个循环对每个文件的行名做交集,用最终的交集文件去match出所有你要的行然后合并 。
但是这个例子中,有的文件的行名是1-4000,有的是5000-8000,存在非常大的差异,而需求是最后整合成一个行名为0-8000的矩阵,因此我先建立一个0-8000的列作为行名,把每个文件和这列进行一个match操作,然后未match到的填充为0 。
其实没有很难的部分,主要是需要读取文件夹中的所有文件名,然后循环读取就行了 。
【R语言】解决GO富集分析绘图 , 标签重叠问题 前面r语言批量go我给大家详细介绍过
?GO简介及GO富集结果解读
?四种GO富集柱形图、气泡图解读
?GO富集分析四种风格展示结果—柱形图r语言批量go,气泡图
?KEGG富集分析—柱形图r语言批量go,气泡图 , 通路图
?DAVID GO和KEGG富集分析及结果可视化
也用视频给大家介绍过
?GO和KEGG富集分析视频讲解
最近有粉丝反映说,利用clusterProfiler这个包绘制GO富集分析气泡图和柱形图的时候,发现GO条目的名字都重叠在一起r语言批量go了 。
气泡图
柱形图
这个图别说美观了,简直不忍直视 。经过我的认真研究,发现跟R版本有关 。前面我给大家展示的基本都是R 3.6.3做出来的图 。很多粉丝可能用的都是最新版本的R 4.1.2 。
我们知道R的版本在不停的更新,相应的R包也在不停的更新 。我把绘制气泡图和柱形图相关的函数拿出来认真的研究了一下,终于发现的症结所在 。
dotplot这个函数,多了个 label_format 参数
我们来看看这个参数究竟是干什么用的,看看参数说明
label_format :
a numeric value sets wrap length, alternatively a custom function to format axis labels. by default wraps names longer that 30 characters
原来这个参数默认值是30 , 当标签的长度大于30个字符就会被折叠 , 用多行来展示 。既然问题找到了,我们就来调节一下这个参数,把r语言批量go他设置成100,让我们的标签可以一行展示 。
是不是还是原来的配方,还是熟悉的味道
同样的柱形图,我们也能让他恢复原来的容貌 。
关于如何使用R做GO和KEGG富集分析,可参考下文
GO和KEGG富集分析视频讲解
R语言:clusterProfiler进行GO富集分析和Gene_ID转换 ID转换用到的是 bitr() 函数 , bitr()的使用方法:
org.Hs.eg.db包含有多种gene_name的类型
keytypes() :keytypes(x),查看注释包中可以使用的类型
columns() :类似于keytypes() , 针对org.Hs.eg.db两个函数返回值一致
select() :select(x, keys, columns, keytype, ...) eg.
函数enrichGO()进行GO富集分析,enrichGO()的使用方法:
举例:
关于r语言批量go和r语言批量更改数据类型的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读