You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用R的readr库将单行文本文件拆分导入为多行DataFrame

解决R语言readr导入单行多组制表符分隔数据的问题

针对你的需求——导入仅含一行、列以制表符分隔、行以单个空格分隔的txt文件,可按以下步骤操作:

  1. 读取整个文件为字符串
    先用readr::read_file()读取文件全部内容,避免按行读取的函数直接生成单行DataFrame:

    library(readr)
    # 替换为你的文件路径
    file_content <- read_file("data.txt")
    
  2. 拆分出每行的内容
    按单个空格拆分字符串,得到包含列名和各行数据的向量:

    # 用stringr拆分(需先安装/加载stringr包)
    row_strings <- stringr::str_split(file_content, " ")[[1]]
    # 或用base R的strsplit
    row_strings <- strsplit(file_content, " ")[[1]]
    
  3. 转换为DataFrame
    将拆分后的向量传入read_delim(),指定制表符为列分隔符,同时将第一个元素识别为列名:

    df <- read_delim(text = row_strings, delim = "\t", col_names = TRUE)
    

示例验证

模拟你的示例数据并运行:

# 模拟txt文件内容:列名A\tB\tC,数据行3\t2\t1和4\t5\t6,以空格分隔
sample_content <- "A\tB\tC 3\t2\t1 4\t5\t6"
row_strings <- stringr::str_split(sample_content, " ")[[1]]
df <- read_delim(text = row_strings, delim = "\t", col_names = TRUE)

# 输出结果
print(df)

得到的DataFrame如下:

# A tibble: 2 × 3
      A     B     C
  <dbl> <dbl> <dbl>
1     3     2     1
2     4     5     6

内容的提问来源于stack exchange,提问作者canergin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 06:30:07