如何查看.RData 文件中的数据?

我看到了一些类似的问题,我试着自己解决,但我做不到。这就是我的问题:

我必须加载一个 isfar.RData 文件,以便在其他计算中使用它(这里不必进行描述)。我想简单地看看 isfar.RData 文件中的数据是什么样子的,比如它包含哪些数字、列和行。

首先我加载我的文件:

isfar<-load("C:/Users/isfar.RData")

当我试图通过 ls ()函数获取这些信息(我使用的是 Rcmdr)或者在加载后的开始处标记 isfar 时,我会在输出窗口中获取: [1]“ isfar”而不是表。为什么?

非常感谢,非常感谢你们的回答! 希望你们能理解我写的东西,我不是以英语为母语的人。

304791 次浏览

似乎 .RData文件中存储的唯一变量是一个名为 isfar的变量。

您确实保存了表吗? 命令应该是:

save(the_table, file = "isfar.RData")

检查变量的方法有很多种。

在命令提示符下键入它的名称以查看输出。然后看看 strls.strsummaryViewunclass

isfar<-load("C:/Users/isfar.RData")
if(is.data.frame(isfar)){
names(isfar)
}

如果 isfar 是一个数据框架,这将打印出其列的名称。

看看 load的帮助页面。Load 返回的是创建的对象的名称,因此您可以查看 isfar 的内容以查看创建了什么对象。ls()中没有显示任何其他内容这一事实表明您的文件中可能没有存储任何内容。

还要注意,当使用默认行为时,加载将覆盖全局环境中与正在加载的文件中的名称相同的任何内容。如果您主要想检查文件中的内容,并且可能使用该文件中的内容以及全局环境中的其他对象,那么最好使用 attach函数或创建一个新环境(new.env) ,并使用 envir参数将文件加载到该环境中。

我认为问题在于您使用的是 load isfar data.frame,但是通过 load返回的值覆盖了它。

试试这两种方法:

load("C:/Users/isfar.RData")
head(isfar)

或者更一般的方式

load("C:/Users/isfar.RData", ex <- new.env())
ls.str(ex)

你可以试试

Isfar <-get (load (‘ c:/users/isfar. Rdata’))

这将把 isfar 中的变量赋值给 isfar can use str(isfar) or ls(isfar) or head(isfar) to get a rough look of the isfar.

这可能更适合作为一个评论,但我没有足够的声誉,所以我把它放在这里。
值得一提的是,无论您如何命名 .Rdata文件,最初保存的 load()函数将保留对象名

请检查 save()函数中使用的 data.frame 对象的名称。如果使用 RStudio,可以检查右上面的面板 Global Environment-Data,以查找所加载的数据的名称。

您还可以通过 RStudio 中的“ Import Dataset”选项卡在“ global environment”下导入数据 使用下拉列表中的文本数据选项并从文件夹中选择.RData 文件。 导入完成后,它将在控制台中显示数据。 希望这个能帮上忙。

如果您的 Rdata文件中有很多变量,并且不希望它们扰乱您的全局环境,那么创建一个新环境并将所有数据加载到这个新环境中。

load(file.path("C:/Users/isfar.RData"), isfar_env <- new.env() )


# Access individual variables in the RData file using '$' operator
isfar_env$var_name


# List all of the variable names in RData:
ls(isfar_env)
num <- seq(0, 5, length.out=10) #create object num
num
[1] 0.00 1.25 2.50 3.75 5.00
save(num, file = 'num.RData') #save num ro RData
rm(num) #remove num
load("num.RData") #load num from RData
num
[1] 0.00 1.25 2.50 3.75 5.00


> isfar<-load("num.RData")
> typeof(isfar)
[1] "character"
> isfar  #list objects saved in RData
[1] "num"

你似乎不需要把它赋值给一个变量。这种事总是会发生的。事实上,将它赋值给一个变量可能意味着您最终会得到两个具有相同数据的变量。

get(load('C:/Users/isfar.Rdata'))

或者和你的 R 代码在同一个文件夹里。

get(load('isfar.Rdata'))