- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。* b) m$ J/ E2 v0 R- E
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)1 d- H3 k+ m( ~7 c
1、生成一个数据框
; D U! a& M/ o0 x1 i例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)0 s" c- M6 R, A1 ?
dd <- data.frame(name, group, score)1 |) o, l$ b- o# Q: @+ u0 w( t
) h8 e( D5 U7 m1 i
2、合并数据框6 T6 w# q. L+ S% F" h8 r" \
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)- {# @8 }5 m1 n( @9 ^* {" m
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同
. t" O6 G6 D4 _2 add2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。- A4 m7 j/ d# r' b' j% a# y" q
dd3 <- rbind(dd1, dd)$ v. Y, ?+ H$ m
例2:age <- c(14, 15, 14, 16, 13)
- _! K- @. g0 ndd4 <- cbind(dd2, age) #列合并+ ^ j9 d2 b- ^. R o/ F
dd4[2, 3]; dd4$score[2]9 W8 F$ A& H$ u; S# u Z
$ w8 y1 M u: z3 u( l! H& q
3、"连接"函数
! }$ M9 |1 L0 u4 d' K6 W attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。( G, v6 y$ G5 }$ t1 I% c0 z
如果不用attach(),需要用$提取数据框内某一列数据。8 V% \/ I2 s9 c+ q0 d: |4 d
1、attach()和detach()函数的应用' @8 z) {! H- @2 l4 `% ^! g
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据
* n& H5 {' D& z7 I% o( iWT2
; f# v1 Y' |/ q" T Xattach(girl1) #连接入当期工作空间
& d, F# t3 c2 AWT2 <- 12:136 s h9 {/ u1 W3 n. t
mode(WT2) #结果时数值型/ z1 V/ I0 \) F! |; {: O
rm(WT2)7 g" |' x# U' v; ]4 J% {9 p
detach(girl1) #取消连接7 w5 G1 }: x. h
WT2$ K/ H- _- \- n& Q7 S+ @9 H
girl1$WT2' K. A+ U5 V' K" B1 S+ \
1 M8 x0 D' N! A. l0 f! {" v$ r7 j% r
|
zan
|