第2章 创建数据集

注:R语言的再复习之路

1.数据结构

1.1 向量

单个向量中的数据必须拥有相同的类型或模式(数值型、字符型、逻辑型)

1.2 矩阵

m <- matrix(vector, 
            nrow = number_of_rows, 
            ncol = number_of_columns, 
            byrow = logical_value, 
            dimnames = list(char_vector_rownames, char_vector_colnames))
# 例
m <- matrix(1:4, 
            nrow = 2, 
            nrow = 2, 
            byrow = T, 
            dimnames = list(('R1', 'R2'), ('C1', 'C2')))

1.3 数组

数组与矩阵类似,但是维度可以大于2

a <- array(vector, dimensions, dimnames)

# 例
dim1 <- c('A1', 'A2')
dim2 <- c('B1', 'B2', 'B3')
dim3 <- c("C1", "C2", "C3", "C4")
a <- array(1:24, c(2, 3, 4), dimnames = list(dim1, dim2, dim3))

1.4 数据框

# 固定数据框
attach(mtcars)

# 解除固定
detach(mtcars)

# 创建列联表
table(vector1, vector2)

# 设定数据框的行名
d <- data.frame(vector1, vector2, vector3, row.names = r_n)

with(mtcars, {
nokeepstates <- summary(mpg)
keepstats <<- summary(mpg)
})

如果需要创建在with()结构以外存在的对象,使用特殊赋值符<<-替代标准赋值符<-,这样就可将对象保存到with()之外的全局环境中。

1.5 因子

变量可以归结为名义型、有序型、连续型,其中类别(名义型)变量和有序类别(有序型)变量在R中称为因子。

# 例1
status <- c("Poor", "Improved", "Excellent", "Poor")
status <- factor(status, order=TRUE, 
 levels=c("Poor", "Improved", "Excellent"))

# 例2
sex <- factor(sex, levels=c(1, 2), labels=c("Male", "Female"))

1.6 列表

g <- 'My First List'
h <- c(25, 26, 18, 39)
j <- matrix(1:10, nrow = 5)
k <- factor(c(1, 2, 2, 2, 1, 2, 1, 1), levels = c(1, 2), labels = ('study', 'game'))
l <- list(title = g, age = h, j, date = k)

注:R语言不提供多行注释的功能,如果想要调试,可以把代码放入if (FALSE) {...}中,将FALSE改为TRUE即可执行这块代码

2.数据的输入

2.1 使用键盘输入数据

mydata <- data.frame(age=numeric(0), 
                     gender=character(0), 
                     weight=numeric(0)) 
mydata <- edit(mydata) / fix(mydata)

注:创建长度固定的初始向量可以使用c <- numeric(length = ...)或者c <- character(length = ...)来创建

2.2 处理数据对象的实用函数

函数用途
str(object)显示某个对象的结构
class(object)显示某个对象的类或类型
mode(object)显示某个对象的模式
names(object)显示某个对象中各成分的名称
cbind(object1, object2)按列合并对象
rbind(object1, object2)按行合并对象
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值