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

时间:2011-09-01 12:50:00

标签: r rdata

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

我必须加载一个isfar.RData文件,以便在其他计算中使用它(这里描述并不重要)。我想简单地看看如何在这个isfar.RData文件中查找数据,例如它携带的数字,列数和行数。

首先我加载我的文件:

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

当我尝试通过ls()函数获取此信息(我正在使用Rcmdr)或在加载后在开头标记isfar时,我进入输出窗口:[1]“isfar”而不是表。为什么呢?

非常感谢,我感谢所有答案!希望我能够理解我写的内容,我不是母语。

10 个答案:

答案 0 :(得分:60)

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

尝试:

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

或更一般的方式

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

答案 1 :(得分:21)

你可以尝试

  

isfar&lt; - get(load(&#39; c:/users/isfar.Rdata'))

这会将isfar.Rdata中的变量分配给isfar。完成这项任务后,你 可以使用str(isfar)或ls(isfar)或head(isfar)来获得isfar的粗略外观。

答案 2 :(得分:9)

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

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

答案 3 :(得分:4)

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

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

答案 4 :(得分:1)

您还可以通过RStudio中“全局环境”下的“导入数据集”选项卡导入数据。 使用下拉列表中的文本数据选项,然后从文件夹中选择.RData文件。 导入完成后,它将在控制台中显示数据。 希望这会有所帮助。

答案 5 :(得分:1)

如果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) 文件中有很多变量,并且不想让它们混乱您的全局环境,请创建一个新环境并将所有数据加载到该新环境中。

SUMPRODUCT

答案 6 :(得分:1)

您似乎不需要将其分配给变量。那一点神奇地发生了。事实上,将它分配给一个变量可能意味着你最终会得到两个具有相同数据的变量。

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

或者如果它与您的 R 代码在同一个文件夹中...

get(load('isfar.Rdata'))

答案 7 :(得分:0)

听起来.RData文件中唯一存储的变量是名为isfar的变量。

你真的确定你保存了桌子吗?该命令应该是:

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

有很多方法可以检查变量。

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

答案 8 :(得分:0)

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

如果isfar是一个数据框,则会打印出其列的名称。

答案 9 :(得分:0)

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"