- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
( ~* T. L$ G% J2 J. {8 J. E6 k j数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)$ V, g8 i! u8 l$ c1 R' y
1、生成一个数据框. v( k9 H+ `: ]& @
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
; `; r( P7 M; l' @dd <- data.frame(name, group, score)
6 P) R9 G& d7 n
8 k. F% o% w& j. |, p5 d8 e) h4 Y! m2、合并数据框
2 M5 p% l0 y7 w5 [例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)* E" U3 w) y* k3 n# i$ m
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同- C3 ^1 t8 `2 c0 z) a
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。! t6 ?+ e* w/ G+ |3 _2 e
dd3 <- rbind(dd1, dd)7 w" T; S0 Z3 ]( m W- K0 N
例2:age <- c(14, 15, 14, 16, 13)' I0 t0 `+ M. x; M0 V
dd4 <- cbind(dd2, age) #列合并
9 H( c2 w1 j/ H, m; r. w# gdd4[2, 3]; dd4$score[2]
- E- S) l5 Q& g
+ F5 I5 e/ O1 R3、"连接"函数
/ c, Z. t1 S$ E# u attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。4 Q8 y% ]) X3 k6 m
如果不用attach(),需要用$提取数据框内某一列数据。
5 w) Q7 A {8 p$ E+ {3 c- V1、attach()和detach()函数的应用5 L3 ]8 R2 A- L. i+ I$ T/ I* O
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据4 D G1 f4 o( f5 Q
WT2
4 n3 r) ]/ t# i+ j) gattach(girl1) #连接入当期工作空间
- `6 a1 N. f3 K/ j, M6 |WT2 <- 12:130 Q F: k1 j5 K
mode(WT2) #结果时数值型( l$ d$ C" i, Y( P, d
rm(WT2)
& [) E( W( [0 C& l3 Fdetach(girl1) #取消连接3 @! s' g) f0 P4 X
WT29 S& u3 f5 a6 g8 R) }# K: H
girl1$WT2
8 |3 p, q! A+ T3 X* w6 G" N: j) G. a- ~
; X3 p! f) ^7 ]4 H |
zan
|