- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。$ h z! k! t$ q$ q/ A" [( \% {
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
' {! N+ L# t$ {( e1、生成一个数据框
+ W+ T5 ~) Z. u7 Q1 E7 q例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)( j4 n4 `& Y% d4 {4 ?" a1 @
dd <- data.frame(name, group, score)
. _; o1 ]& Z z y" K
! [/ k+ y' Y" g6 k4 ^$ A0 N1 \ q0 K2、合并数据框" \* z, m2 U* y2 H( m
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99) ~+ V" T/ j1 a) f, E; B$ R4 t- @
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同
6 a2 p+ O% \1 H! ^dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。+ [+ ], [) P h7 Y8 G4 A% B* u
dd3 <- rbind(dd1, dd)
6 Q, I4 |) b2 A; s例2:age <- c(14, 15, 14, 16, 13)/ @; q, o, a& \/ ^" Q! @: s
dd4 <- cbind(dd2, age) #列合并
4 x- k0 n3 U% W; c. q( hdd4[2, 3]; dd4$score[2]
" |4 G' s3 H+ M+ W" M P( B
8 E; f) P7 m, U; D- z0 w& u3、"连接"函数
: r1 O3 o! `" C attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。8 d" G: i: `& {
如果不用attach(),需要用$提取数据框内某一列数据。
7 S; S) F. ]6 A0 k% M. v9 k1 r1、attach()和detach()函数的应用1 L) C# ~2 s7 s" }, u& P: L
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据! o$ [% f; J! U$ A, n
WT2$ t/ c ^) I( i' g
attach(girl1) #连接入当期工作空间$ X ~0 _5 C; ~
WT2 <- 12:130 Q$ e+ j9 B" d& I& v8 o( D- G
mode(WT2) #结果时数值型/ ~2 q4 x" B* w9 s8 i3 E
rm(WT2)
; S% {2 [; O+ b: H& X! tdetach(girl1) #取消连接
5 U5 p2 Q0 l: Q" OWT2& F9 g" s& e- _4 K4 \
girl1$WT2
4 Q) L* b4 ~0 V! G/ i* ?7 b0 Z0 P4 E. `! ?# z# a" c; W* G
0 _; N' m: ?( W; L3 b5 O |
zan
|