- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
+ z9 y* Q6 `8 W+ s数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
U% _% N/ b+ a) v: P9 D1、生成一个数据框
: S+ w) ^, v0 ^. B8 V, X" W例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
& w7 v: j4 W N# a* I1 ^dd <- data.frame(name, group, score)
( S3 Z, |/ G- a1 y: x$ t$ X/ e
# `3 `0 |# n8 H2、合并数据框
. m/ Q& Z. G/ \; I7 K1 T1 X例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)
# W) p8 c/ S& \" {4 s5 C8 U. \dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同2 K0 h+ L' Z% R1 i
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
5 H' r- Q& y9 i: sdd3 <- rbind(dd1, dd)
6 f3 i, d: _, H$ }9 S( m例2:age <- c(14, 15, 14, 16, 13)
: `& [. P5 C! P4 \' r5 Zdd4 <- cbind(dd2, age) #列合并* W$ y0 j) n$ L' x/ i+ B% j
dd4[2, 3]; dd4$score[2]
5 t& T$ y* @0 B* C4 I- G2 j/ ]
# ^! M: J$ V) A0 a Y2 E/ L+ f% r3、"连接"函数/ a. e/ e' z. L7 Y& ^
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。: h% r& ~ [0 o* a; |8 Z
如果不用attach(),需要用$提取数据框内某一列数据。
7 U# T Y7 G8 P' q ~7 a1、attach()和detach()函数的应用
# C9 k4 O* N( m* }. q5 @4 d例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据
* m: v9 w! Z0 j7 L9 N3 J' d- s" wWT2
) Z4 v7 c0 n# x; `1 zattach(girl1) #连接入当期工作空间
H/ m; m# P. x* F; D9 W3 LWT2 <- 12:13' g8 W; P ^) d' Z
mode(WT2) #结果时数值型- Y! N* M$ v) T* s* R
rm(WT2); G9 T4 D) e$ L7 S1 d5 L2 K
detach(girl1) #取消连接5 y. G& i. V5 _' l
WT2
4 N" `8 U: {2 h/ Ugirl1$WT2; K$ j* b7 j0 |9 p
6 v9 W" u4 o. Y2 B
7 n: v4 b. Z7 k/ M0 N7 S D {" F |
zan
|