0

我有一个要导入 R 的 .rec 文件。我已将 .rec 文件保存到我的工作目录中。这是我尝试过的。

library(foreign)  
library(RODBC)  
data.test <- read.epiinfo("data_in.rec")  

我收到此错误:

Error in if (headerlength <= 0L) 
stop("file has zero or fewer variables: probably not an EpiInfo file") : 
  missing value where TRUE/FALSE needed

另外:警告信息:

1:

In readLines(file, 1L, ok = TRUE) :
  line 1 appears to contain an embedded nul

2:

In strsplit(line, " ") : input string 1 is invalid in this locale

我在网上和 R 中的 read.epiinfo 帮助包中查看过。帮助包说

Epi Info 的一些更新版本使用 Microsoft Access 文件格式来存储数据。这可以通过 RODBC 包读取。

我有两个问题。
1. 我得到的错误是因为我拥有的 .rec 文件来自高于 6 的 Epi Info 版本吗?
2. 如何使用 RODBC 库打开 .rec 文件?

4

1 回答 1

2

.rec(或 .REC)文件原来是 .EDF(欧洲数据格式)文件类型。使用库 edfReader 在 R 中轻松打开它。edfReader 库帮助文件对于打开文件和提取时间序列数据非常有用。请参阅下面的代码了解我使用的内容。代码改编自帮助文件。

install.packages('edfReader')
library(edfReader)
?edfReader  
lib.dir <- system.file("data_in.rec",package="edfReader")  
Cfile <- paste(lib.dir,'/edfPlusC.edf',sep='')  
CHdr <- readEdfHeader("data_in.rec")  
CSignals <- readEdfSignals(CHdr)  
summary(CSignals) 
于 2018-09-02T00:47:09.423 回答