在R中读取具有多个空格和单词的文本文件
Reading text file with multiple spaces and words in R
我正在尝试将一个文本文件导入到 R 中,该文件包含多个由多个空格分隔的列。它还包含也由空格分隔的单词。
我已经尝试了很多 read.table() 命令。当我使用 sep = "" 时,R 识别列,但将每个单词放在单独的列中。我可以组合这些列,但不同的行包含不同数量的单词。
文本文件中的一行示例:
123A456B789C0 RADIO PANEL 95-17 AB123 0 1
0987AB654321C ALTIMETER 12-34 123AB 1 2
1234567890ABC LIGHT SENSOR BACK 78-45 ABC12 0 1
我该如何解决这个问题?
read.fwf
函数(将固定宽度格式化数据的 table 读入 data.frame)就是您要找的.使用上面的示例:
read.fwf(file = "test", widths = c(16, 20, 12, 13, 8, 1), strip.white = T)
V1 V2 V3 V4 V5 V6
1 123A456B789C0 RADIO PANEL 95-17 AB123 0 1
2 0987AB654321C ALTIMETER 12-34 123AB 1 2
3 1234567890ABC LIGHT SENSOR BACK 78-45 ABC12 0 1
file
是您的源文件,widths
是一个整数向量,具有所有列的连续宽度,您可以添加 strip.white = T
以便为每个值修剪不必要的空格.
我正在尝试将一个文本文件导入到 R 中,该文件包含多个由多个空格分隔的列。它还包含也由空格分隔的单词。 我已经尝试了很多 read.table() 命令。当我使用 sep = "" 时,R 识别列,但将每个单词放在单独的列中。我可以组合这些列,但不同的行包含不同数量的单词。 文本文件中的一行示例:
123A456B789C0 RADIO PANEL 95-17 AB123 0 1
0987AB654321C ALTIMETER 12-34 123AB 1 2
1234567890ABC LIGHT SENSOR BACK 78-45 ABC12 0 1
我该如何解决这个问题?
read.fwf
函数(将固定宽度格式化数据的 table 读入 data.frame)就是您要找的.使用上面的示例:
read.fwf(file = "test", widths = c(16, 20, 12, 13, 8, 1), strip.white = T)
V1 V2 V3 V4 V5 V6
1 123A456B789C0 RADIO PANEL 95-17 AB123 0 1
2 0987AB654321C ALTIMETER 12-34 123AB 1 2
3 1234567890ABC LIGHT SENSOR BACK 78-45 ABC12 0 1
file
是您的源文件,widths
是一个整数向量,具有所有列的连续宽度,您可以添加 strip.white = T
以便为每个值修剪不必要的空格.