- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
4 o# Z7 E3 q* d" [- m4 f数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
) o8 v8 n; P$ ~: M" Q# m1、生成一个数据框) |+ o" p3 [5 A' m' B: F
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
6 T! o7 m8 _3 n8 I. A& \% [dd <- data.frame(name, group, score)
6 D# }7 Y o9 T1 E$ ]" ~/ k* O- F4 e( C. u+ l M6 v
2、合并数据框; n" `; r' x' ?0 N4 _9 U4 x
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)" k/ u( f: k7 ^9 z1 h
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同, O$ l5 _0 E0 r" D8 h+ G
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
: W7 c' Z, Y+ {0 |5 |dd3 <- rbind(dd1, dd)
0 B% [& x0 B3 r# b例2:age <- c(14, 15, 14, 16, 13)9 U2 A* e/ z2 f- t9 C. G4 B
dd4 <- cbind(dd2, age) #列合并+ Q, f/ M& f, C+ q
dd4[2, 3]; dd4$score[2]5 Y% V3 F( a0 X
5 Y) Y# w/ q) S9 Y& g. I
3、"连接"函数6 {6 c0 n, z. w2 [' r
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。
: h/ E& _1 z% v( ~% l6 C如果不用attach(),需要用$提取数据框内某一列数据。; q* D/ E. B$ `1 X
1、attach()和detach()函数的应用" i# q6 Z3 n! J6 Z) x
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据8 O( x# K0 d5 g4 W
WT2
7 W2 k2 g) s& G- g8 Q, E9 zattach(girl1) #连接入当期工作空间
5 f0 I9 d- o: P, d& I OWT2 <- 12:13% c+ o4 [ A& ?& @
mode(WT2) #结果时数值型' I% E3 Y, G) @# S9 r$ f- N& e, S
rm(WT2)
! Q; T) y; y4 {' {" m# Bdetach(girl1) #取消连接: }$ O- a1 L# s2 V$ B$ K' p) N
WT2
) ~8 j* m9 K3 v8 s' wgirl1$WT2
% q) p: m+ T4 n1 V' I# H
/ {% g# d5 }( w8 U! W3 D; t2 L. Y- K
# m3 X+ ?3 D% {: g& y |
zan
|