- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。/ S8 t& w5 [+ I: W% v# S
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
" W/ ?' O1 N' |; }1、生成一个数据框+ `2 T( E! G6 O% i4 M
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92); j U1 z* Y( L3 }1 j( N; p# Z$ `
dd <- data.frame(name, group, score)
7 k$ E$ y T, j- u6 C% z4 G" z8 R' G8 A4 z
2、合并数据框
) c' g" O; J6 c2 z6 r例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)9 x% i8 j2 v3 ^4 p, K7 h6 Y
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同" V4 P# Z# S! E
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
! C1 v% i" Z# t; c* U; Ldd3 <- rbind(dd1, dd)
, ?% F+ s8 i5 x2 h$ Z例2:age <- c(14, 15, 14, 16, 13); [% a; x3 w% m7 A! l6 q- J0 u! u2 M5 M7 K
dd4 <- cbind(dd2, age) #列合并
0 p0 A9 }* x) [4 {6 N3 Xdd4[2, 3]; dd4$score[2]& K8 k" w- g# R$ _, j* z& I: P1 n
7 ^- W/ ^& Z4 M; Z" t+ ~$ ~3、"连接"函数4 k6 V' e) U+ d/ Y, M5 ~
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。3 J9 \( [& S) s
如果不用attach(),需要用$提取数据框内某一列数据。+ s: y- [, {. n! f! X
1、attach()和detach()函数的应用
- Y2 b3 @3 A8 {+ r1 h例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据
4 [# O8 l/ s5 C$ m( E3 ?3 dWT2
. J" ?3 U. ~+ Q) o+ lattach(girl1) #连接入当期工作空间
! s, q" j% }9 d7 t9 \WT2 <- 12:13$ K' w0 T& B; L9 H1 u
mode(WT2) #结果时数值型7 _7 B9 q" s$ f+ t0 T0 X8 Q
rm(WT2)' ^) I1 a3 M% Z2 B- S
detach(girl1) #取消连接
3 j6 F2 z& c" D/ w* c* RWT24 r& {4 S+ X2 R0 Y& E
girl1$WT2% s! K' V/ E, [) R, |* C% T
8 a2 d* @) c( {8 \! S
& d9 v! @4 Z; V( U9 s7 P7 v |
zan
|