- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。. b; T- }& H* T: o4 J% }
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)6 Z: W' |+ ?; m B, T
1、生成一个数据框
2 [+ J6 M/ z1 ]例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)# i1 X& w- {1 D! ?3 z
dd <- data.frame(name, group, score)
5 M; z4 ^8 _# G; O# e& }9 v# o( T2 t$ m+ B
2、合并数据框
! L4 q( y9 U B* P$ E1 Q* y例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)
, h( ?3 T6 n2 `3 y Xdd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同% u q) s$ P. _6 Z! e
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
' E8 h0 m3 {' R0 f$ z' Y5 C, G, [dd3 <- rbind(dd1, dd)
2 ^ q2 [) R |8 Z( g例2:age <- c(14, 15, 14, 16, 13)
0 ?8 F2 z' n2 Xdd4 <- cbind(dd2, age) #列合并$ X! [) {, y0 X6 Y/ E
dd4[2, 3]; dd4$score[2]0 q3 c% @2 y/ P+ N% i
" W* I5 G! a; h/ A3、"连接"函数
# q1 A) m0 F6 P7 `( x6 Z! f7 E attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。
' S* ]' U9 C1 I9 u5 C9 k7 X如果不用attach(),需要用$提取数据框内某一列数据。9 q/ e2 S: _; _3 q9 M# }$ W
1、attach()和detach()函数的应用6 R% |7 h! S5 w0 f) m( V
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据
* B+ M2 G0 ]! p: s( g" a' @% tWT2
% z+ v4 S+ N# `8 x9 v8 R, [attach(girl1) #连接入当期工作空间, m* m# K; d, ^2 `5 E/ l. A% ]
WT2 <- 12:139 K' w6 y# P- p# Z2 l7 K* ~' ?; y
mode(WT2) #结果时数值型& C: |6 y5 o2 u8 X8 | h/ p( ]
rm(WT2)* p4 j- O5 v1 A! I1 a8 R$ i
detach(girl1) #取消连接2 i9 Q2 [- V1 h$ j
WT2
4 u4 p. G' l5 @+ o1 Igirl1$WT26 j. K/ D. {% B5 V* h
# z7 j/ E/ `5 W4 O2 W
; Y$ J0 S c' C0 q, t. s9 [* s
|
zan
|