搜索
查看: 1910|: 0

[资源分享] 用R语言做数据分析(6)——列表

[复制链接]

165

主题

5

回帖

1123

积分

金牌会员

积分
1123
发表于 2014-5-24 03:23:45 | 显示全部楼层 |阅读模式
通过list函数来创建列表,例如,创建一个包含三个列的列表,请注意与R语言中的列表显示有什么不一样:1、创建列表demo_1

2、
创建数据框demo_1_1

·列表对每个列显示都会单独以一行的形式存在;·数据框则是以表(或者是矩阵)的形式显示;所以根据数据输出的格式可以判断是列表还是数据框;
创建一个示例列

Demo_2<-list(name=c('lucy','alice','lei'),                  
heigh=c(178,156,188),                  
sex=c('F','F','M'),                  
score=c(200,210,198))

#包括一个缺少值的列表
Demo_3<-list.frame(name=c('lucy','alice','lei'),                  
heigh=c(178,156,188),                  
sex=c('F','F',NA),                  
score=c(200,210,198))

列表特点
  • 列表包含所有列表的特点。列表与列表的最大区别在于,列表的各列的长度是可以不一致的。
      例如:Demo_3<-list(name=c('lucy','alice','lei'),                    
                                      heigh=c(178,156),                  
                                      sex= 'F')

      

列表基本操作
     
1.查看列表信息

   #查看类型
    class(Demo_1)
   #查看某列的类型
    class(Demo_1$sex)
   #查看列表长度 即就是列的个数;
    length(Demo_1)
   #列表各项名称
   names(Demo_1)
   

2.取列表中的某列或者某列元素

   #取列表的第二列
    Demo_2[2]
    Demo_2$heigh

#取列表的某二列的元素  
  Demo_2[[2]]


Demo_2[[2]]与Demo_2[2]二者输出的区别在于,前者是输出向量,后者输出是列表;
我们详细来看下面的内容:
   
   
3.取向量中的某个元素
Demo_2[[N]][M] 取:N列中的第M个元素;         
   
4.判断列表各行是否完整
   
complete.cases(Demo_2)

#选择非缺失值的数据
Demo_3[complete.cases(Demo_3)
           

5.增加列
#给Demo_1增加一列
Demo_1$score2<-c(12,13,23)
Demo_1<-cbind(Demo_1,score2=c(12,13,23)
   

6.其它操作
#删除一个值      
Demo_1$score2<-NULL
   
#把列表转为向量:  
unlist()   
#移除列表中的元素:  
ist[[N]] <- NULL

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大数据中国微信

QQ   

版权所有: Discuz! © 2001-2013 大数据.

GMT+8, 2024-11-15 11:50 , Processed in 0.246927 second(s), 25 queries .

快速回复 返回顶部 返回列表