- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。0 L2 s- {6 h/ {3 e6 Q( {/ b/ p& y, _
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
- ~9 l( a/ P% D6 y0 v4 k# K9 ]* ?1、生成一个数据框: i. m* H4 z; a6 x; _- q( c$ _9 c
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
- b% h8 D! \; \! W" y9 Fdd <- data.frame(name, group, score) x0 B+ s: T6 M
, j9 A f& I$ n! b' d1 _
2、合并数据框0 ?+ V/ p( c3 S: [
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)0 _+ D" v; N- N0 H; N& O
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同4 | |) D% c+ E; c5 L2 W4 y
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。0 Y/ G$ D3 x$ D. ]% V" Z& b
dd3 <- rbind(dd1, dd)
/ u$ A5 O: \3 j: V6 w+ U例2:age <- c(14, 15, 14, 16, 13)$ l1 M. n3 ~" `, C- Y2 @. I7 \0 W
dd4 <- cbind(dd2, age) #列合并
0 w, e0 y6 T, F+ y: |( kdd4[2, 3]; dd4$score[2]
- G* n! Q0 i0 [% S& z: e, s4 I A B, t% Q
3、"连接"函数
: m- F h/ k2 c" C7 V$ V attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。
1 G# E0 s- c2 B1 c/ d$ A9 c如果不用attach(),需要用$提取数据框内某一列数据。
8 y0 W" w& ]' }0 c: u' T1、attach()和detach()函数的应用% w" S# x3 s% E4 i: n% n
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据# s) p' j) t) y- L2 h) b/ }5 O _1 n
WT2
! v7 r9 J. M- Y D- n5 G9 q9 Qattach(girl1) #连接入当期工作空间
5 G6 m% n" Z/ u: oWT2 <- 12:13
7 h# N |, o Gmode(WT2) #结果时数值型
7 b5 [' m7 G; V% d: `8 ^2 hrm(WT2)
; m; `; e2 B6 d) [+ }% `detach(girl1) #取消连接
8 C6 ^' U. p- B0 J0 JWT27 }5 D( s# j; k
girl1$WT24 Z; Y1 z' x+ D' e2 H1 G3 q
6 u n' k2 {$ ^' X. {
* J O8 W6 t4 `8 e2 u+ I0 K |
zan
|