- 在线时间
- 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 @7 W& G, G( F; C) z, T% g. _
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
& f$ J9 n9 n R) a+ y: {. }) x1、生成一个数据框3 r: T; R% [( v5 U# @3 m0 b$ {4 K
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
8 b5 Y: T2 [, ~& t7 ]dd <- data.frame(name, group, score)
$ m, s$ }7 m0 U& L: C* O2 ~9 n V `& r
2、合并数据框
! u o! h! N+ y( [例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)
% N0 m# l! J$ Z! T' Ldd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同5 M9 c# r2 T( E! h/ P1 d* p. p
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。9 Q- ~" R* _. F9 }' P
dd3 <- rbind(dd1, dd)$ b* b" {% q* P# T: T
例2:age <- c(14, 15, 14, 16, 13)
. ]9 A" p5 v' K6 G6 bdd4 <- cbind(dd2, age) #列合并
) F7 w) M [$ S9 X2 ^dd4[2, 3]; dd4$score[2]
! z% `9 ~9 g$ i5 z7 W: t4 @ Y5 `( r: e4 [' i0 n' _$ `* h2 a
3、"连接"函数* R0 X9 ]4 R8 H4 Y, p+ h2 s
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。
0 [/ b9 |. r0 n如果不用attach(),需要用$提取数据框内某一列数据。: e% i0 ^- o& n; L$ w
1、attach()和detach()函数的应用
9 X& m8 v6 U. }( b7 n( O, M例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据3 a0 g8 W0 g/ j. k& K5 k
WT27 y; N. H9 H+ B2 D! R- V
attach(girl1) #连接入当期工作空间 e4 f1 c9 ~' _3 ?# y
WT2 <- 12:13* W7 W# F% R/ a0 p
mode(WT2) #结果时数值型7 t1 K. M' O; }& G$ ` x5 ?; j* j
rm(WT2)
& F0 ^& q# {( L6 g) Edetach(girl1) #取消连接4 J) [6 x# M9 z7 @- w
WT2- s/ Z" ]3 d# F9 t2 B0 D; c
girl1$WT2! ~: Y8 j. K6 j, I) m7 I
8 B9 d1 C" t* |$ w: ^9 L! s5 R8 o
5 V" f( }, q- n+ V5 Y' g
|
zan
|