- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
5 m& }: w! U" [数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...): P( \9 g' D7 F+ F8 }2 d
1、生成一个数据框4 H* |) B! a; t v1 B, x) d1 z
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92) c0 o. ^( H; R# U
dd <- data.frame(name, group, score)& u; H/ W6 V0 F* x7 l' a
3 B# D) P: s' ]2 `
2、合并数据框
$ z: G2 K0 [2 ~& k$ y; B4 h9 e8 M例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)1 V" e$ {$ @9 E9 Y2 R1 V1 t
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同
5 ~( g# C9 _7 R9 y& ]dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
2 |' j' z! z6 k3 B& jdd3 <- rbind(dd1, dd)
: M3 d- l9 R8 O. q: h3 H* f! E( a3 `例2:age <- c(14, 15, 14, 16, 13)
; @; w% K7 _) [. ndd4 <- cbind(dd2, age) #列合并
) Z& V$ t+ c0 E/ U1 f' c; ldd4[2, 3]; dd4$score[2]
9 U2 B9 ^1 a# i# Q5 a' N5 F6 |7 [+ y* I5 B7 U
3、"连接"函数
; O5 K! o5 W6 D attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。9 \ ]- L+ F j# r7 n
如果不用attach(),需要用$提取数据框内某一列数据。
" `" V: N8 g! w6 x; j1、attach()和detach()函数的应用
4 @3 R+ x0 a) O2 b% |1 P+ L4 u% g例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据 S9 X/ L+ p$ Q# H; m; z/ j/ Z
WT29 n2 Y; b( I* c p" {# Q
attach(girl1) #连接入当期工作空间
2 Q8 I& U9 ^% eWT2 <- 12:13; b8 @9 N; Z1 Y) `
mode(WT2) #结果时数值型
5 P8 q# J% P# m1 i. Vrm(WT2)4 u! D+ t: A- ?. G x) j6 z2 Z; G
detach(girl1) #取消连接
5 {0 s. H# ]+ \# MWT2
0 E' R7 ]4 q3 g2 m- B* M9 p. tgirl1$WT2/ y5 B6 z8 A9 G. ?( F, i
1 Y- m7 o0 m% x) Q# s5 z
) z$ m) _$ ^) s! } |
zan
|