0

我有一个包含 5 行示例数据的 Excel 文件。我已经给出了以下代码将其导入 R。

> testdata <-read.table(file.choose(),header=TRUE)

我收到如下警告消息。

Warning message:
In read.table(file.choose(), header = TRUE) :
  incomplete final line found by readTableHeader on

我忽略了警告消息并继续查看我的数据,但发现没有选择任何行。以下是我要到达的

> testdata
[1] PK...
<0 rows> (or 0-length row.names)

由于我是 RI 的初学者,因此无法追踪错误。任何有关警告和错误的帮助将不胜感激。请帮忙。

4

2 回答 2

5

那是因为您正在尝试导入常规 Excel 工作簿/工作表(扩展名 .xls 或 .xlsx)。这些是二进制文件;R 不知道如何处理它们。

要将数据导入 R,您有几个选择:

  1. 使用类似RODBCor的包xlsx,它可以将文件导入数据框。对于初学者来说,这可能有点复杂。

  2. 将工作表另存为 .csv 文件。这些是纯文本文件,您可以使用read.csv.

如果您选择选项 2,则有一些提示:

  1. 在导入之前清除单元格中的所有格式。如果您的数字带有嵌入的美元符号、百分号、逗号等,R 会将您的数字视为文本,这可能会导致很多混乱。

  2. Excel 仅以可见精度而不是实际精度将数字保存到 CSV 文件。因此,您要确保保存所需的所有小数位。

  3. 日期除外,您应保留其格式。R 会将它们作为因子导入,然后您可以在必要时将其转换为 R 日期。

于 2013-07-06T19:02:37.033 回答
1

标准 R 不导入 Excel 文件,但您可以将它们保存为 CSV 格式,然后使用read.csv.

于 2013-07-06T18:58:30.690 回答