- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
% A% f2 P$ `8 {# I数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
3 D8 y2 V ]. t% `4 }$ _1、生成一个数据框
5 k' I9 O" O$ s! t9 G4 R: k6 K' @2 Z例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
' c/ f9 h' U1 _+ fdd <- data.frame(name, group, score)
& i( D0 t3 {# p u* K
% |1 z& |% @5 H0 S* c: n4 T2、合并数据框& f7 s" m; x& N2 @6 x: O. N" |
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)" R) o% [6 b% \& \" C. B
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同5 b1 z' X1 T1 w6 L- b \/ B* x) [$ d
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
! g5 N4 f" u+ f- D2 r" wdd3 <- rbind(dd1, dd)4 q* f2 z* A" d* }
例2:age <- c(14, 15, 14, 16, 13)% a% A* _' h; M8 f' {- i
dd4 <- cbind(dd2, age) #列合并' m9 u Y+ q/ B0 a
dd4[2, 3]; dd4$score[2]: D% ]6 Z0 x' `' G$ E
: t2 G: i- k/ ~
3、"连接"函数& v& n4 ~; c5 a8 X% j- q
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。3 a }" S8 j& Z5 U% x* C D
如果不用attach(),需要用$提取数据框内某一列数据。; M; H) K( Z# y9 K+ f
1、attach()和detach()函数的应用! n( j4 T* w# e
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据: f7 g& {. b; R* E7 W
WT2
4 |3 v5 @2 h1 Y2 B# @9 [& T1 Aattach(girl1) #连接入当期工作空间3 d! k A. ?5 `, N; o% w5 d
WT2 <- 12:13
% Y6 g5 n S7 Qmode(WT2) #结果时数值型' }' W/ n5 c3 H# k. _
rm(WT2)
" ?' M6 S3 _; H" k8 t# Qdetach(girl1) #取消连接
6 E, ?) B) |& Q9 N2 k! MWT26 a) Q C; m k9 V2 Z; ]( x5 l* |
girl1$WT24 P* X5 j. [. O
2 Z* b! J) A) g/ r) p i5 w% j& p
$ \; f3 c4 T4 W8 a |
zan
|