R语言基础--数据框、矩阵和列表

生物技能树(第三节课)

数据框、矩阵和列表

R第三节

一、基本概念

1.Vector向量–一维,数值型,数字型和逻辑型只能是一种

2.matrix 矩阵-二维,只允许一种数据类型,用的最多的是数值型

3.data.frame数据框-二维。不同列数据类型可以不同,但每列只允许一种数据类型,矩阵和数据框的格式不一样

4.list列表:可装万物,可以把不同数据放一起变成新的数据,使用场景(三次差异分析的结果放在一个列表里方便进行批量处理),“表格”二维
在这里插入图片描述

二、数据框来源

在这里插入图片描述

内置数据:

iris

letters

## [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l"

## [13] "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x"

## [25] "y" "z"

LETTERS

## [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L"

## [13] "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X"

## [25] "Y" "Z"

volcano

将数据用表格形式呈现

x = volcano

heatmap(volcano)

1.新建数据框

代码如下(示例):

#1.新建和读取数据框
df1 <- data.frame(gene   = paste0("gene",1:4),
                 change  = rep(c("up","down"),each = 2),
                 score   = c(5,3,-2,-4))
df1

df2 <- read.csv("gene.csv")
df2

2.从文件中读取

代码如下(示例):

##文件需要放在工作过目录下才可以 
##read.csv()是一个函数,用于从csv文件中读取数据,并将其加载到一个数据结构中,通常是数据框(DataFrame)。
> df2 <- read.csv("gene.csv")
> df2
   gene change score
1 gene1     up     5
2 gene2     up     3
3 gene3   down    -2
4 gene4   down    -4

3.数据框的属性

> #3.数据框属性
dim rownames colnames
> #数据框属性:dim是维度的意思,行数和列数
> dim(df1)
[1] 4 3
> nrow(df1)
[1] 4
> ncol(df1)
[1] 3
> #提取行名和列名
> rownames(df1)
[1] "1" "2" "3" "4"
> colnames(df1)
[1] "gene"   "change" "score" 

在这里插入图片描述

4.数据框取子集

#单取一行是数据框,取多行多列仍是个数据框,单取一列是向量
> df1$gene  #表示提取了数据框 df1 中名为 "score" 的列,删掉score,按tab键试试
[1] "gene1" "gene2" "gene3" "gene4"
> mean(df1$score)
[1] 0.5
> ## 按坐标
> df1[2,2]
[1] "up"
> df1[2,]
   gene change score
2 gene2     up     3
> df1[,2]
[1] "up"   "up"   "down" "down"
#换成df1[2],去掉逗号,就可以在单取一列时仍然保持数据框的属性
> df1[c(1,3),1:2]
   gene change
1 gene1     up
3 gene3   down
#逗号前是行,逗号后是列,取13行,12> ## 按名字
> df1[,"gene"]
[1] "gene1" "gene2" "gene3" "gene4"
##取多个的时候,就把基因名称组成一个向量,单引号与双引号在此没有区别
> df1[,c('gene','change')]
   gene change
1 gene1     up
2 gene2   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值