- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
% v! N6 R% ^+ m3 I& h: ?数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)$ \6 x! e+ K( V0 b( O2 k% _
1、生成一个数据框
) x2 l$ o4 M }/ W例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
: c+ o& A$ B5 V( o. zdd <- data.frame(name, group, score)
* P1 l, h2 g% z! K2 `$ k3 S- J$ F; E
8 Q; y; l5 r7 _- Y/ c2 \' u2、合并数据框" u# d* X' |2 n
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99): s0 a" S, \+ j% b( v$ r3 p
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同$ b2 c4 [4 o' V! w# I/ @+ r
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
7 e5 C$ g E7 d7 x& ?( Z* t1 C: n8 Ydd3 <- rbind(dd1, dd)
7 z# A& o: q: F" n6 _例2:age <- c(14, 15, 14, 16, 13); l6 O* x4 K+ c( q
dd4 <- cbind(dd2, age) #列合并
- G- t9 m: D% w/ A: Ddd4[2, 3]; dd4$score[2]' E8 W6 G5 s& ^* e% d5 K
" y/ a. {- R* I' H7 M* j& |3、"连接"函数& B. R/ e) S7 G9 c
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。8 \$ i( ] Z# O2 F
如果不用attach(),需要用$提取数据框内某一列数据。& }, T) V5 x' ?, U8 J
1、attach()和detach()函数的应用
6 _9 o0 G8 H# {9 t例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据3 m( [1 P. ^4 w! W) }1 d
WT2) C- B# v9 ~5 c+ X3 j
attach(girl1) #连接入当期工作空间
, J6 v# Z3 o# o$ @WT2 <- 12:137 t/ _' }6 I% m A# p V
mode(WT2) #结果时数值型
& G9 [ O0 A0 \' c5 e/ C4 y7 krm(WT2)% n |& X0 T: ?- b5 h9 f
detach(girl1) #取消连接$ [: x6 B1 B( E+ @/ K
WT2
, B+ n0 s/ z' d+ Q9 Ygirl1$WT2+ T( ]& x5 S8 s& z; Y) u- L* }
) e7 d& V6 o$ c4 M$ A* c3 Q; D4 h% ? o3 C, s% }) t7 V$ }. ]
|
zan
|