- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
1 g$ t4 Z' {3 @6 X+ [' d+ S* W数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
6 B- C% T: [( Z* F+ o( X: ^2 V% Q1、生成一个数据框& j7 K% u1 Z3 f: e; Y
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)9 F% \) T* B) L
dd <- data.frame(name, group, score). @( @2 v% A. o( c) Y$ h
) v- U' ^- ?# Q7 K+ ?
2、合并数据框% v" u* K1 j1 j2 }: }
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99) ]; ~' F2 v) T! {+ D+ _! e
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同
+ H. X. e9 f, @, k: Jdd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
$ n' t2 ?. F# mdd3 <- rbind(dd1, dd)8 A4 a; ~7 q( q2 u# S: t% p
例2:age <- c(14, 15, 14, 16, 13)
) ?$ J+ g* R9 V" Zdd4 <- cbind(dd2, age) #列合并
3 B+ t3 q. w+ S+ s% S0 Ndd4[2, 3]; dd4$score[2]
8 ]* f& g* @2 O2 U. o0 c7 [9 B, J1 ^7 G3 G8 d$ K. E% Z
3、"连接"函数2 l0 n' l( o7 n5 h5 c
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。8 u, u; o2 M; z* }
如果不用attach(),需要用$提取数据框内某一列数据。- d6 m i2 F: a. s
1、attach()和detach()函数的应用
! Q- r' ]& r* v: T例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据: x b1 ] O+ [' d! \7 i7 f' B
WT2
, |7 ^* e* x- D) U. yattach(girl1) #连接入当期工作空间
' }: _' g4 G' k1 wWT2 <- 12:13
8 R8 P3 W/ _4 y& }8 h xmode(WT2) #结果时数值型
3 a" ]" p. x! \6 u- @+ K2 M( _rm(WT2)
+ f+ j2 b7 f( E/ {8 x* Q: }$ sdetach(girl1) #取消连接3 |3 x G& W% G! {$ U$ l
WT23 `( D: c6 P# q
girl1$WT2% _5 r$ A# h5 e0 E' t, ]
# u& i n0 t$ d; J
+ t5 _" Q9 d) S( I# G! s
|
zan
|