R语言学习笔记1

这篇博客介绍了R语言的基础数据结构,包括如何创建和操作矩阵、数组、数据框以及列表。通过示例展示了如何创建矩阵、访问元素、创建数据框并取数据框中元素的方法,还探讨了如何使用attach、detach以及with函数。最后,博主讲解了因子变量的创建及列表的使用。

创建矩阵matrix():

x <- matrix(5:24, nrow=4, ncol=5)

输出结果为:

       [,1] [,2] [,3] [,4] [,5]
[1,]    5    9   13   17   21
[2,]    6   10   14   18   22
[3,]    7   11   15   19   23
[4,]    8   12   16   20   24

访问矩阵中某一行或列:

x[row_num, ] | x[, col_num]

x[3,]

输出结果为:

[1] 3 7 11 15 19

x[,5]

输出结果为:

[1] 17 18 19 20
访问矩阵中单个元素:

x[row_num, col_num]

创建数组array():

> dim1 <- c("A1","A2","A3")
> dim2 <- c("B1","B2")
> dim3 <- c("C1","C2","C3","C4")
> d <- array(1:24, c(3,2,4), dimnames=list(dim1,dim2,dim3)) # c(3,2,4)即为三维
> d

输出结果为:
, , C1

   B1 B2
A1  1  4
A2  2  5
A3  3  6

, , C2

   B1 B2
A1  7 10
A2  8 11
A3  9 12

, , C3

   B1 B2
A1 13 16
A2 14 17
A3 15 18

, , C4

   B1 B2
A1 19 22
A2 20 23
A3 21 24

> d[1,2,3]   
[1] 16

创建数据框data.frame():

> passagerID <- c(1,2,3,4)
> age <- c(25, 19, 28, 46)
> sex <- c("F","M","M","M")
> status <- c("health", "sick", "slim", "fat")
> passagerData <- data.frame(passagerID, age, sex, status)
> passagerData
  passagerID age sex status
1          1          25   F health
2          2          19   M   sick
3          3          28   M   slim
4          4          46   M    fat

取数据框中元素

Method1:

> passagerData[1:2]
  passagerID age
1          1          25
2          2          19
3          3          28
4          4          46
> passagerData[3]
  sex
1   F
2   M
3   M
4   M

Method2:

> passagerData[c("passagerID", "status")]
  passagerID status
1          1 health
2          2   sick
3          3   slim
4          4    fat

Method3:

> passagerData$age
[1] 25 19 28 46

导入数据框attach():

绑定attach(mtcars)

解除绑定detach(mtcars)

with用法:
> with(mtcars,{
+ l <- mpg
+ l})
 [1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2
[11] 17.8 16.4 17.3 15.2 10.4 10.4 14.7 32.4 30.4 33.9
[21] 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4 15.8 19.7
[31] 15.0 21.4

with(mtcars,{c(l<-mpg)})
 [1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2
[11] 17.8 16.4 17.3 15.2 10.4 10.4 14.7 32.4 30.4 33.9
[21] 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4 15.8 19.7
[31] 15.0 21.4

> l
Error: object 'l' not found

在with()内赋值的变量在with()外无定义

创建因子变量factor():

> sex
[1] "F" "M" "M" "M"
> sex <- factor(sex)
> sex
[1] F M M M
Levels: F M

创建列表list():

> g <- "My first list"
> h <- c(12,45,90,43)
> j <- matrix(1:10, nrow=2)
> k <- c("one","two","three")
> mylist <- list(g,h,j,k)
> mylist
[[1]]
[1] "My first list"

[[2]]
[1] 12 45 90 43

[[3]]
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    3    5    7    9
[2,]    2    4    6    8   10

[[4]]
[1] "one"   "two"   "three"

> mylist[[2]]
[1] 12 45 90 43

> mylist[[2:1]]
[1] 12

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值