数学建模社区-数学中国
标题:
R语言入门基础之数据框
[打印本页]
作者:
数模天下
时间:
2012-12-24 14:02
标题:
R语言入门基础之数据框
数据框(data frame)
数据框是一种矩阵形式的数据,但数据框中各列可以是不同类型的数据。数据框每列是一个变量,每行是一个观测。数据框可以看成是矩阵的推广,也可看作一种特殊的列表对象,很多高级统计函数都会用到数据框。
9 p+ D% m. d; ?7 p! |
数据框用函数data.frame()生成,语法是:data.frame(data1, data2, ...)
. l; W/ I" W) e0 K
1、生成一个数据框
8 t: a9 N4 ]" V$ h
例1:name <- c('Mr A', 'Mr B', 'Mr C'); group <- rep(1, 3); score <- c(69, 71, 92)
7 }! z7 V& n' M! b0 B1 t
dd <- data.frame(name, group, score)
9 g: P. i( D: q# w7 z7 z- D
# v; i/ M# j& H
2、合并数据框
) U- Y3 t, s$ l) h9 H
例1:name <- c('Ms C', 'Ms D'); group <- c(2, 2); score <- c(93, 99)
) P' C9 |5 ~: b
dd1 <- data.frame(name, score, group) #注意这里排列顺序与dd中不同
, d( l8 v& Q$ Z6 m4 Y7 P, o$ p( K
dd2 <- rbind(dd, dd1) #行合并结果与dd排列顺序一致,说明其中有一个匹配过程。
8 I h2 M& ~+ Q, I! P! y' O0 \
dd3 <- rbind(dd1, dd)
% u" _1 A; B" r* T+ U7 i
例2:age <- c(14, 15, 14, 16, 13)
1 ?# h2 U# `$ |1 K. m( J
dd4 <- cbind(dd2, age) #列合并
$ q+ l2 U( ]8 v/ P- [! G2 t' M \
dd4[2, 3]; dd4$score[2]
6 q8 V/ X5 D9 u2 C% ]2 B" _: |
) _5 {) M# F0 J4 S1 z. C
3、"连接"函数
8 ^: ?) ~, m) g' z% P, u
attach()和detach()函数是应用数据框时很有用的工具。attach()函数将数据框连接入当前工作空间,detach()取消连接。
" n, ^& G) `6 L$ V/ C
如果不用attach(),需要用$提取数据框内某一列数据。
% E0 x/ v" I; {0 e' S
1、attach()和detach()函数的应用
7 b, P1 L% v( [' }$ K9 U- R
例1:girl1 <- read.table('d:/girl1.txt', head = T) #读取数据
3 K* T; H2 b2 h( h( C3 J Q
WT2
9 @( ]! j7 f u) O
attach(girl1) #连接入当期工作空间
$ u# y" T- t9 G, l; a5 `
WT2 <- 12:13
) u! h) B' o& C4 x7 i( ]. E+ X
mode(WT2) #结果时数值型
7 z4 `$ F, I4 q
rm(WT2)
4 z; d9 f. d! a5 ^! _
detach(girl1) #取消连接
1 @, O' K! I* n, }
WT2
; m7 i1 v) E% E j, c
girl1$WT2
- s( Q0 O% D& N3 D
% C# s/ x+ e, u
) U+ c* L% T- @/ Y' J
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5