matlab批量读取txt文件_如何批量读取合并文件

本文介绍如何使用MATLAB批量读取同一文件夹内以.counts为结尾的TXT文件,并将它们合并成一个包含基因ID和表达值的数据框。通过dir查找文件名,构建文件路径,然后用lapply和read.table读取文件,最后利用do.call(cbind, a)进行列合并。" 112278597,2820065,Flink SQL中DataStream与Table的全局窗口Join操作解析,"['flinksql', 'join', 'table']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先描述一下情况,我有一个文件夹叫“原始1”

d73acbc06350e14edeac9fcba29b41fb.png

打开看一看,里面有大坏蛋 和小可爱文件

5053017000c9feb134dfa6baf1248fd0.png

3个大坏蛋文件,打开格式如下, 第一列基因ID一模一样,区别是第二列不同。

4b21017cecef82f14f4231c51284dbde.png

需求:

我们想把3个大坏蛋读取,合并成一个文件:第一列是基因ID,后面列都是表达值

批量读取文件三部曲:

1.找到文件名

2.构建文件的路径

3.lapply配合read.table读取

1. 找到文件名

dir查看‘原始1’里东西

p1'原始1',pattern = '*.counts')

大坏蛋名字都是.counts结尾,所以pattern参数指定读取counts结尾数据

278591b5243dc17c04f1edc5566dff04.png

2. 构建文件路径

构建文件目录

p2'原始1/',p1)

7d01af4bc150c843b62e574efd438b96.png

3. lapply 配合 read.table读取

a

row.names=1 意思是 原来的第一列,读取当做行名

返回的a是一个list, 这个list相当于一个柜子,每个抽屉存放着读取的3个文件

list 转 data.frame

a1<-data.frame(do.call(cbind,a))

do.call(cbind, a) 就是把 a这个list, 里面文件内容 按cbind列合并,返回data.table

所以进一步data.frame转换成数据框

df41e0d82d12477efa45be8d453d406e.png

大坏蛋读取、合并就此解决

3d258d28af2dd01fd1d4164e057e3ac9.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值