首页 > 解决方案 > 有没有办法强制 R 读取具有特定列数的表,以便它填充所有列?

问题描述

我正在尝试将这张表读入 R。

我知道我可以跳过前x行来忽略序言。

使用此代码:

read.table("https://www.physics.mcmaster.ca/~harris/GCS_table.txt",
              header = T,
              sep = "\t",
              skip = 36)

我得到的问题是 R 将所有数据放入一列,而不是将其拆分为不同的列。

我注意到列标题,一旦我将它们读入 R,似乎用小数点分隔,所以我试过:

read.table("https://www.physics.mcmaster.ca/~harris/GCS_table.txt",
              header = F,
              sep = "\t",
              skip = 38)

避免使用标题 - 这更好,但它仍然强制将所有内容放在一列中。

我已经尝试了我能想到的每一个“sep”论点,但没有运气。

有没有办法告诉 R 填充x列?还是我的“sep”论点有问题?

标签: rread.table

解决方案


我不确定表中有多少行/列,但您可以尝试

data.table::fread("https://www.physics.mcmaster.ca/~harris/GCS_table.txt",
                   header = TRUE,skip = 36)

或者

read.table("https://www.physics.mcmaster.ca/~harris/GCS_table.txt",
            header = TRUE,skip = 36, fill = TRUE)

推荐阅读