- 在线时间
- 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# ]+ `4 W3 n# @2 |数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)4 F1 p( b) d* O$ k* o0 G3 D
1、生成一个数据框( n6 h- R% d6 p
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
8 [) Z$ u ]; D, t$ udd <- data.frame(name, group, score)
0 ^2 {; ?: ?% |' N1 ?; `3 f& z& g4 Y" `& \8 @- W
2、合并数据框
b: C$ @8 k M/ I+ d8 J" O2 J t例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)/ Z# S& L+ j3 b- b
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同8 g% b+ L' k- P# o
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
/ H8 F& Q5 v5 M5 M" O. udd3 <- rbind(dd1, dd)6 g/ Q! W9 y& g# W% I
例2:age <- c(14, 15, 14, 16, 13)
3 ~: `# l$ ]" Y$ j; t! ~+ }dd4 <- cbind(dd2, age) #列合并
) z' k& h: n E5 ^6 e2 c, vdd4[2, 3]; dd4$score[2]: q/ S/ N0 |/ t3 @( F1 V) O( I [
. M; _ b6 |8 P; Y3、"连接"函数# O" z; k7 S8 ~5 w) {$ n
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。" D- Z' E: k9 n
如果不用attach(),需要用$提取数据框内某一列数据。7 J/ o5 _, P$ R' R: Q/ {
1、attach()和detach()函数的应用
, A6 u7 w' H% R" s/ F0 u% w例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据
, y. g5 A! X3 k4 [. j% mWT22 k6 a& f$ m, B$ V+ E G
attach(girl1) #连接入当期工作空间) J3 }$ Y" @/ E# q' p+ i# Z8 G( X$ o
WT2 <- 12:135 H. e$ ~6 F+ s! t
mode(WT2) #结果时数值型
# R4 o/ |. Z1 ]/ B* N, ]+ O4 hrm(WT2): J" o' e% c" d, D
detach(girl1) #取消连接6 \" H2 h' \; r. b$ k% e' M
WT2+ |5 j9 n" e# q1 o1 K7 {4 t+ Q
girl1$WT2
9 D5 \/ T5 B/ h) i
0 J# R K$ s1 \8 Q0 c( {; E" e; H) y/ T" |$ w
|
zan
|