- 在线时间
- 27 小时
- 最后登录
- 2013-5-20
- 注册时间
- 2012-11-2
- 听众数
- 15
- 收听数
- 1
- 能力
- 0 分
- 体力
- 3870 点
- 威望
- 0 点
- 阅读权限
- 60
- 积分
- 1335
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 347
- 主题
- 320
- 精华
- 0
- 分享
- 0
- 好友
- 6
升级   33.5% TA的每日心情 | 奋斗 2013-6-15 16:58 |
|---|
签到天数: 24 天 [LV.4]偶尔看看III
 群组: 第四届数学中国美赛实 |
|
数据框(data frame) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。8 o) j( @5 M3 Y/ N/ G
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
! U1 Z( _% ]7 C: m% f1、生成一个数据框
{9 k5 ~/ S ~3 b+ a例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)6 u+ t4 k! M; y( h: _
dd <- data.frame(name, group, score)& q. G4 T" H. b2 ?' {
- c1 U( ^; E4 G, j6 u2、合并数据框
* z2 L5 O6 @ M ^2 z* e例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)2 m% |. P2 B* }% A6 `2 M5 ~
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同
5 {! ~ n: P/ J4 add2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。9 f. p5 e5 d' J! A2 ]
dd3 <- rbind(dd1, dd)
" c: N' ^" L4 G8 _: o C$ F! V" v例2:age <- c(14, 15, 14, 16, 13)7 D0 C- F7 B- c/ j/ B
dd4 <- cbind(dd2, age) #列合并
8 B' M: ^% P; a$ j% H, g" N5 kdd4[2, 3]; dd4$score[2]- t4 J, q! H& \( D8 m# m
# Z; a3 R7 Y: H( _' V' j0 i8 M
3、"连接"函数* X+ t7 Q$ i) V' o; l
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。( c- W6 s7 m5 ]$ k
如果不用attach(),需要用$提取数据框内某一列数据。
! q# C9 m- c9 m" k6 k1、attach()和detach()函数的应用
4 y+ v! D9 {/ B8 J- Y' ]例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据& g, A: S! ~( n6 M# A R) }
WT2: J3 [+ q5 D G$ j' ^* _! _! y# p
attach(girl1) #连接入当期工作空间
" L6 m3 \4 R' l1 b. a8 r# T( V% R. HWT2 <- 12:13
- B5 J/ X. Z& [3 Pmode(WT2) #结果时数值型$ T" Y, @6 d& w; O0 x
rm(WT2)
% s# S* F/ c+ [3 S# N7 Adetach(girl1) #取消连接9 |) e' ?' I' x6 `& [9 h0 Y1 q
WT2
# v. [/ h! x; Vgirl1$WT2
$ h- H( P& U- ^2 \6 }9 f$ S9 ?$ p7 q3 d$ @" ^9 ?; |$ o; `
1 ~5 Z2 N, O( S! r; F. F; N. F5 [# t |
zan
|