- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
9 }3 e8 |' V8 M( g1 t+ G数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
1 u" o! l. |* [1、生成一个数据框
9 V! ]% S1 X- f4 e9 h: f0 c例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)( P6 Q1 ]4 S8 ?- V: ]+ `. q
dd <- data.frame(name, group, score)( w. G. E) g5 i0 @
8 B _$ B+ G6 O! }2、合并数据框
2 e( Y$ `# e9 g0 Y* s% q! w# k/ k0 p" {例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)" f% J1 [. w s; _
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同- U5 j% M% r; {5 L. Y S
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。) Z( w. f. w& x
dd3 <- rbind(dd1, dd)3 h, A6 x* P/ S3 O$ E; @; U
例2:age <- c(14, 15, 14, 16, 13)
5 D4 d# x: P; E( q& tdd4 <- cbind(dd2, age) #列合并
% a" C$ k( s# m3 I% \% h3 |dd4[2, 3]; dd4$score[2]" [3 R4 ~3 S* [ B; a; E- X
5 j& d# [5 G7 G6 {" c" ~6 a$ T5 n0 n3、"连接"函数
8 F# a: b, C! i% a, f; B( v attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。; {9 W* d( ^: W
如果不用attach(),需要用$提取数据框内某一列数据。
2 |1 m" _5 E2 A1、attach()和detach()函数的应用* Q/ H2 r1 v, `0 Z7 s8 K4 U
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据0 o( L$ P* X6 f
WT2
% C+ u# u# X! e3 S+ D& U1 L* vattach(girl1) #连接入当期工作空间. Y# Q& j' P- N8 O! R( L
WT2 <- 12:13. J) O8 |7 a+ Y0 {% N; |: S
mode(WT2) #结果时数值型
" z- _2 H2 N9 zrm(WT2)
6 P' r# J8 x0 f0 Bdetach(girl1) #取消连接
, u* c# I* B; O/ f3 YWT21 S7 I# N' g: S4 H: R% K# k+ b; ^
girl1$WT20 ^6 m0 B8 ]8 x I* A
; L1 Q% u7 x' {- u2 A! z1 z6 g+ ~/ i1 z8 J9 \/ P4 z
|
zan
|