7.1 read.table()函数

为了可以直接读取整个数据框,外部文件常常要求有特定的格式。

  • 第一行可以有该数据框各个变量的名字
  • 随后的行中第一个条目是行标签,其他条目是各个变量的值。

在文件中,第一行比第二行少一个条目,这样做是被强制要求的1。因此一个被 看作数据框读入文件的开头几行应该是下面的形式。

# 有列名字和行标签的输入文件格式:
     Price    Floor     Area   Rooms     Age  Cent.heat
01   52.00    111.0      830     5       6.2      no
02   54.75    128.0      710     5       7.5      no
03   57.50    101.0     1000     5       4.2      no
04   57.50    131.0      690     6       8.8      no
05   59.75     93.0      900     5       1.9     yes
...

默认情况下,数值项(除了行标签)以数值变量的形式读入, 而非数值变量则以因子的形式读入,如例子中的 Cent.heat 项。在必要时可以改变变量类型。

函数 read.table() 可以用来直接读入数据框

> HousePrice <- read.table("houses.data")

你常常需要忽略掉行标签而直接使用默认的行标签。这种情况下,输入文件就如 下面所示的一样省略行标签。

# 没有行标签的输入文件格式:
Price    Floor     Area   Rooms     Age  Cent.heat
52.00    111.0      830     5       6.2      no
54.75    128.0      710     5       7.5      no
57.50    101.0     1000     5       4.2      no
57.50    131.0      690     6       8.8      no
59.75     93.0      900     5       1.9     yes
...

这时,数据框可用如下命令读入

> HousePrice <- read.table("houses.data", header=TRUE)

其中 header=TRUE 选项指定第一行是标题行,并且因此省略文件中给定的行标签。


1. 译者注:你可以让第一行和第二行条目数一致。但是 R 会把第一行当作数据数据处理而不是你所期望的变量名。可以通过设定 read.table() 的参数 header=TRUE 来解决这个问题。

results matching ""

    No results matching ""