楼主: kakamama
4719 4

[问答] 同样是包括不同的数据类型,为啥list就是vector,而data.frame就不是vector? [推广有奖]

  • 0关注
  • 0粉丝

已卖:626份资源

讲师

0%

还不是VIP/贵宾

-

威望
0
论坛币
2492 个
通用积分
4.8317
学术水平
12 点
热心指数
19 点
信用等级
12 点
经验
1978 点
帖子
383
精华
0
在线时间
330 小时
注册时间
2009-5-13
最后登录
2024-6-7

楼主
kakamama 发表于 2011-2-26 21:43:10 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
> Lst<-list(name="Fred",wife="Mary",no.children=3,child.ages=c(4,7,9));
> is.data.frame(Lst)
[1] FALSE
> is.list(Lst)
[1] TRUE
> is.vector(Lst)
[1] TRUE
> is.matrix(Lst)
[1] FALSE
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Vector Frame 数据类型 Fram Data 类型 Data Vector list Frame

沙发
qoiqpwqr 发表于 2011-2-27 12:08:36
你可以用length(Lst)试试看,结果是4
list可以看成一个vector,只不过里面的每个元素可能类型不一样。
已有 1 人评分热心指数 收起 理由
kakamama + 1 很热心!

总评分: 热心指数 + 1   查看全部评分

藤椅
kakamama 发表于 2011-2-27 12:33:53
qoiqpwqr 发表于 2011-2-27 12:08
你可以用length(Lst)试试看,结果是4
list可以看成一个vector,只不过里面的每个元素可能类型不一样。
多谢您的热心,但是这个并不能解释为什么data.frame不是vector呀,看定义好像data.frame还是一种特殊的list呢,而且我下面的一段程序,也可以用length(y)来看y的长度呀:
> y=read.table("clipboard")
> y
  V1 V2 V3 V4 V5 V6 V7 V8 V9
1  1  2  3  4  5  6  7  8  9
> length(y)
[1] 9
> is.vector(y)
[1] FALSE
> is.data.frame(y)
[1] TRUE
> is.list(y)
[1] TRUE

板凳
shenbaiseshatan 在职认证  发表于 2011-2-27 19:48:08 来自手机
只是一种定义而已吧
胜人者有力,自胜者强!

报纸
snakepointid 发表于 2015-6-16 15:07:51
最主要的是:a[1]返回的是一个值那么a就是vector,如果返回的是一个vector那么就是数据框。
list返回的是一个对象,所以是vector。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 21:43