- 在线时间
- 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) 数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
Y4 I* ?+ Q2 X7 H$ [数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
" Q- o" o3 W3 F" S. ^1、生成一个数据框" T6 l0 o" w- ^7 g' r
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)% _1 k5 K8 K, ^2 U5 }7 K6 R
dd <- data.frame(name, group, score)
/ a1 q. i3 c4 y+ D0 F2 K) v
6 _6 x4 D. \9 B& Q) h" J; t2、合并数据框0 u: ]$ q+ V2 p' @0 x
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)
& T; }8 {9 o% E b3 @( Zdd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同/ m) d+ l4 b9 a. ~+ X* Z% G
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
' L1 k' V. m8 C+ B2 V& [; Sdd3 <- rbind(dd1, dd)
, k+ ]7 I9 z& R# C例2:age <- c(14, 15, 14, 16, 13) d$ D3 n5 {9 i8 i2 h
dd4 <- cbind(dd2, age) #列合并
* L2 M& p) t4 D# i. R2 ~dd4[2, 3]; dd4$score[2]( [& Z, n! ?) Y- k
m. x) [4 f% K/ W
3、"连接"函数
c9 g* s8 Q1 ]" t- r attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。
8 B |1 C% r E/ H0 {4 g如果不用attach(),需要用$提取数据框内某一列数据。3 m; @5 U. R. \& m, U/ L
1、attach()和detach()函数的应用3 ~: @1 u2 K2 M4 U2 @3 T& B# o
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据4 e9 ~4 {- d/ P0 e/ R
WT2
+ D: `; @7 }: l0 t7 `attach(girl1) #连接入当期工作空间6 C- ^, t' V1 L+ N! l) w; \1 r4 }
WT2 <- 12:13) y! g K: _. V3 S
mode(WT2) #结果时数值型- b8 E$ c+ [/ l
rm(WT2)3 m. j9 D4 Q$ ^$ I* {; [( |# H9 _9 G
detach(girl1) #取消连接
1 y8 S& \9 w7 U" y# m& x: ZWT2) P3 d, l9 Q, y. |: h( M9 H5 w+ ]5 U
girl1$WT2& d6 ~& ?5 |0 N! C6 G5 a0 ~
' H8 \7 Y' L( _9 f: ^
s) m6 Y2 r7 X- Y1 }* B0 u8 l |
zan
|