在R中将CSV文件读取为数据框。

10
我是一个R语言的新手,正尝试读取一个csv文件。文档中给出了read.csv()函数。但是,当我读取文件并检查变量类型时,它显示为列表,而文档将其描述为data.frame。有人能解释一下为什么会这样吗?
我的代码如下:
mytable<-read.csv(InputFile,header=TRUE,stringsAsFactors=FALSE)
dim(mytable)
typeof(mytable)

输出:

dim(mytable)
[1] 500  20

typeof(mytable)
[1] "list"

4
没什么意外的。数据框是一个列表,只不过形式上有所不同。查看class(mytable)is.data.frame(mytable)并阅读?data.frame - Rich Scriven
1
data.frame是一个类别,而不是一种类型。尝试使用class(mytable)命令。 - G. Grothendieck
谢谢,class(mytable)将其显示为数据框。 - AMisra
另外,我非常喜欢 str 命令,它可以为你的对象提供简洁的摘要。 - B.Mr.W.
1个回答

2
如同在答案https://dev59.com/0m025IYBdhLWcg3wChKb#6258536中所解释的那样,在R语言中每个"对象"都有一个“mode”和一个“class”。前者表示对象在内存中的存储方式(如数字、字符、列表和函数),而后者则表示其抽象类型。
例如:
d <- data.frame(V1=c(1,2))
class(d)
# [1] "data.frame"
mode(d)
# [1] "list"
typeof(d)
# list

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接