2

我正在尝试使用“保存命令”将 stata 文件保存为 R 文件,但反复出现错误:

>library(foreign)
# read stata file (there is a stata file "data.dta" in working directory)
>read.dta("data.dta")
  var1       var2     var3       var4       var5
1 -4.239497  0.2406101 3.786384 -1.3025404  0.3428481
2 -3.311914  1.9533381 3.200867 -2.4428566  0.9154460
3 -2.156078  1.6590545 4.317356 -3.1660178  1.6963958
4  2.648022 -1.4091060 3.227258 -0.9857693  1.4566656
>getwd()
"C:/Users/Vista/Documents" 
>save(data.dta, file = "data.rda")
Error in save(data.dta, file = "data.rda") : object 'data.dta' not found

在这方面的建议将不胜感激。

4

1 回答 1

3

您需要先将数据分配给 R 对象,否则读入的数据只会打印到您的控制台,但在您的工作区中不可用:

 data.dta <- read.dta("data.dta")
 save(data.dta, file = "data.rda")

如果要检查工作区中可用的对象,可以键入ls().

附带说明:您可能需要考虑.Rds通过以下格式保存对象

saveRDS(data.dta, file = "data.Rds")

而不是以格式使用save和保存它。.rda当您通过load("data.rda")对象加载数据时,仍将具有(可能令人困惑的)名称 data.dta。当您保存它时,.Rds您可以在加载/阅读时重命名它,例如

anyname <- readRDS("data.Rds")
于 2012-12-31T01:13:31.993 回答