加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

R语言基础——数据框(dataframe)

(2018-09-20 08:16:12)
分类: Analytics

https://blog.csdn.net/weixin_36190755/article/details/66972265

https://www.cnblogs.com/liuchangchun/p/4457478.html

数据框(data frame)

  数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
1、生成一个数据框
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
dd <- data.frame(name, group, score)

> name <- c('Mr A', 'Mr B', 'Mr C')
> group <- rep(1, 3)
> score <- c(69, 71, 92)
> dd <- data.frame(name, group, score)
> dd
  name group score
1 Mr A        69
2 Mr B        71
3 Mr C        92

rep(x, ...)

rep.int(x, times)


2、合并数据框
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
dd3 <- rbind(dd1, dd)

> name <- c('Ms C', 'Ms D')
> group <- c(2, 2)
> score <- c(93, 99)
> dd1 <- data.frame(name, score, group)
> dd2 <- rbind(dd, dd1)
> dd1
  name score group
1 Ms C    93     2
2 Ms D    99     2
> dd2
  name group score
1 Mr A        69
2 Mr B        71
3 Mr C        92
4 Ms C        93
5 Ms D        99


例2:age <- c(14, 15, 14, 16, 13)
dd4 <- cbind(dd2, age) #列合并
dd4[2, 3]; dd4$score[2]

> age <- c(14, 15, 14, 16, 13)
> dd4 <- cbind(dd2, age)
> dd4
  name group score age
1 Mr A        69  14
2 Mr B        71  15
3 Mr C        92  14
4 Ms C        93  16
5 Ms D        99  13
> dd4[2, 3]
[1] 71
> dd4$score[2]
[1] 71
$提取数据框内某一列数据

3、"连接"函数
  attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。
如果不用attach(),需要用$提取数据框内某一列数据
1、attach()和detach()函数的应用
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据
WT2
attach(girl1) #连接入当期工作空间
WT2 <- 12:13
mode(WT2) #结果时数值型
rm(WT2)
detach(girl1) #取消连接
WT2
girl1$WT2


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有