iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >R语言怎么批量读取某路径下文件内容
  • 538
分享到

R语言怎么批量读取某路径下文件内容

2023-06-29 19:06:22 538人浏览 安东尼
摘要

今天小编给大家分享一下R语言怎么批量读取某路径下文件内容的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。R刚入门的时候,能够正

今天小编给大家分享一下R语言怎么批量读取某路径下文件内容的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

R刚入门的时候,能够正确读取单个文件就觉得小有成就,随着时间的积累,单一文件地读取已经不能满足需求了,此时,批量地做就是解放双手地过程。

使用for循环把下载地TCGA数据读入R语言并转换成数据框

使用三个for循环来完成,这是第一个for循环。

1. 把所有数据读入在一个文件夹中

dir.create("data_in_one") #创建目标文件夹,也可右键创建dir("rawdata/") #查看原路径的内容for (dirname in dir("rawdata/")){    ## 1.要查看的单个文件夹的绝对路径  mydir <- paste0(getwd(),"/rawdata/",dirname)  ## 2.找到对应文件夹中的文件并提取名称,pattern表示模式,可以是正则表达式  file <- list.files(mydir,pattern = "*.counts")  ## 3.当前文件的绝对路径是  myfile <- paste0(mydir,"/",file)  ## 4.复制这个文件到目的文件夹  file.copy(myfile,"data_in_one")  }

2. 寻找TCGA ID并让文件名称和TCGA ID保持一致。

第二个for循环。文件名称和TCGA ID的对应关系,藏在了metadata中。

metadata <- JSONlite::fromjsON("data/metadata.cart.2021-05-28.json")metadata_id <- metadata[,c("file_name","associated_entities")]## 1.准备容器,已经存在,我们把新数据添加在第三列metadata_id## 2.循环操作for (i in 1:nrow(metadata_id)){  print(i)  metadata_id[i,3] <- metadata_id$associated_entities[i][[1]]$entity_submitter_id}## 重新命名colnames(metadata_id)[3] <- "TCGA_id"

排序,为了把文件名称和TCGA_id对应起来。读入的顺序和复制到新路径的顺序不一致,这一步的目的是让其保持一致。

rownames(metadata_id) <- metadata_id[,1]metadata_id <- metadata_id[files,]

3. 输入文件名并提取文件的第二列(counts列)

#install.packages("data.table")#构建函数myfread <- function(files){  data.table::fread(paste0("data_in_one/",files))$V2}## 测试文件test <- myfread(files[1])

4.1 使用for循环来批量读入并整合到一个数据框。

## 1.创建容器gene_id <- data.table::fread(paste0("data_in_one/",files[1]))$V1expr_df <- data.frame(gene_id=gene_id)## 2.按照列读入for (i in 1:length(files)){  print(i)  expr_df[,i+1] = myfread(files[i])}## 增加列名colnames(expr_df) <- c("gene_id",metadata_id$TCGA_id)### 意外发现tail(expr_df$gene_id,10)### 去掉最后5行(nrow(expr_df)-5)expr_df <- expr_df[1:(nrow(expr_df)-5),]save(expr_df,file = "output/BRCA_RNASEQ_exprdf.Rdata")

4.2 使用lapply + function 模式

函数

myfread <- function(files){  data.table::fread(paste0("data_in_one/",files))$V2}### 2.lapplydd = lapply(files,myfread)### 3.do.callexpr_df = as.data.frame(do.call(cbind,dd))### 4.添加名称colnames(expr_df) = metadata_id$TCGA_idrownames(expr_df) = data.table::fread(paste0("data_in_one/",files[1]))$V1

以上就是“R语言怎么批量读取某路径下文件内容”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: R语言怎么批量读取某路径下文件内容

本文链接: https://www.lsjlt.com/news/326194.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • R语言怎么批量读取某路径下文件内容
    今天小编给大家分享一下R语言怎么批量读取某路径下文件内容的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。R刚入门的时候,能够正...
    99+
    2023-06-29
  • R语言批量读取某路径下文件内容的方法
    R刚入门的时候,能够正确读取单个文件就觉得小有成就,随着时间的积累,单一文件地读取已经不能满足需求了,此时,批量地做就是解放双手地过程。 使用for循环把下载地TCGA数据读入R语言...
    99+
    2024-04-02
  • R语言怎么读取Feather文件
    要在R语言中读取Feather文件, 需要先安装arrow包,然后使用arrow包的read_feather()函数来读取Feath...
    99+
    2024-04-08
    R语言
  • R语言怎么读取SAS文件
    在R语言中,可以使用haven包中的read_sas()函数来读取SAS文件。首先需要安装haven包,然后使用以下代码来读取SAS...
    99+
    2024-04-08
    R语言
  • R语言怎么读取Excel文件
    在R语言中,可以使用readxl包来读取Excel文件。首先需要安装readxl包,可以使用以下命令安装: install.pack...
    99+
    2024-04-08
    R语言
  • R语言怎么读取NetCDF文件
    在R语言中读取NetCDF文件需要使用ncdf4或RNetCDF等相关包。可以按照以下步骤来读取NetCDF文件: 安装ncdf4...
    99+
    2024-04-08
    R语言
  • R语言怎么读取tsv文件
    在R语言中读取tsv文件可以使用read.delim()函数。该函数可以读取以制表符分隔的文本文件。 例如,假设有一个名为data....
    99+
    2024-03-04
    R语言
  • R语言中怎么读取Avro文件
    在R语言中,可以使用avro包来读取Avro文件。首先需要安装avro包,可以使用以下命令进行安装: install.package...
    99+
    2024-04-08
    R语言
  • R语言中怎么读取JSON文件
    在R语言中可以使用jsonlite包来读取JSON文件。首先需要安装jsonlite包,可以使用以下代码安装: install.pa...
    99+
    2024-04-08
    R语言 JSON
  • R语言中怎么读取STATA文件
    要在R语言中读取STATA文件,可以使用haven包中的read_dta()函数。下面是一些示例代码: # 安装 haven 包 i...
    99+
    2024-04-08
    R语言
  • c语言怎么读取文件内容并输出
    在C语言中,可以使用`fopen`函数打开文件,然后使用`fscanf`函数读取文件内容,最后使用`printf`函数输出内容。以下...
    99+
    2023-09-27
    C语言
  • pycharm怎么读取文件路径
    要在PyCharm中读取文件路径,可以使用以下方法: 使用绝对路径:可以直接提供文件的完整路径,例如`/home/user/fi...
    99+
    2023-10-24
    pycharm
  • R语言读取文件报错怎么解决
    当R语言读取文件报错时,可以尝试以下几种解决方法: 检查文件路径:确保文件路径是正确的,并且文件存在于指定的路径中。 检查文...
    99+
    2023-10-23
    R语言
  • 使用R语言怎么批量修改文件名
    本篇文章给大家分享的是有关使用R语言怎么批量修改文件名,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 修改文件扩展名folder<-setwd('~/t...
    99+
    2023-06-09
  • python读取文件路径怎么写
    答案:可以通过 os.path.abspath() 函数读取文件路径。展开:os.path.abspath() 函数将相对路径转换为绝对路径,返回文件的完整路径。语法:os.path.a...
    99+
    2024-04-20
    python
  • c语言中如何读取txt文件内容
    这篇文章主要介绍了c语言中如何读取txt文件内容的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇c语言中如何读取txt文件内容文章都会有所收获,下面我们一起来看看吧。在C语言中,文件操作都是由库函数来完成的。要读...
    99+
    2023-06-08
  • python怎么批量读取文件名
    在Python中,可以使用os模块来批量读取文件名。具体步骤如下: 导入os模块:import os 使用os.listdir()...
    99+
    2024-02-29
    python
  • python怎么批量读取dat文件
    你可以使用glob模块来批量读取.dat文件。下面是一个示例代码: import glob file_list = glob.gl...
    99+
    2024-02-29
    python
  • java怎么读取桌面文件路径
    在Java中,你可以通过System.getProperty(“user.home”)来获取当前用户的主目录,然后再将"D...
    99+
    2024-03-02
    java
  • Python怎么读取相对路径文件
    这篇文章主要介绍“Python怎么读取相对路径文件”,在日常操作中,相信很多人在Python怎么读取相对路径文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python怎么读取相对路径文件”的疑惑有所帮助!...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作