我正在尝试使用“保存命令”将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
这方面的建议将受到高度赞赏。
答案 0 :(得分: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")