前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言基础-02(数据框、下载包)

R语言基础-02(数据框、下载包)

原创
作者头像
我不知道
发布2023-03-12 13:57:17
6490
发布2023-03-12 13:57:17
举报
文章被收录于专栏:生信学习笔记01生信学习笔记01

数据框、矩阵、列表

matrix:只允许一种数据类型(有坑,见后)

data.frame:每列只允许一种数据类型

数据框属性

代码语言:text
复制
df1 <- data.frame(gene   = paste0("gene",1:4),
                 change  = rep(c("up","down"),each = 2),
                 score   = c(5,3,-2,-4))
df1
##    gene change score
## 1 gene1     up     5
## 2 gene2     up     3
## 3 gene3   down    -2
## 4 gene4   down    -4

#dimension
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"

#修改数据框就是修改向量
#改行名和列名
rownames(df1) <- c("r1","r2","r3","r4")
#只修改某一行/列的名
colnames(df1)[2] <- "CHANGE"

数据框取子集

取子集的本质还是按位置或者按逻辑值

代码语言:text
复制
#筛选数值型
df1[df1$score > 0,]#取出df1中

#筛选test中,Species列的值为a或c的行
test[test$Species!="b",]
test[test$Species=="a"|test$Species=="c",]
test[test$Species %in% c("a","c"),]

矩阵不支持$

删除

代码语言:text
复制
#删除 
rm(l)#删除一个
rm(df1,df2)#删除多个
rm(list = ls()) #清空

下载包

代码语言:text
复制
options("repos"=c(CRAN="http://mirrors.tuna.tsinghua.edu.cn/CRAN/"))#设置镜像
#1.CRAN的直接install
install.packages("tidyr")
#2.BiocManager的包要在它里面下
install.packages('BiocManager')
BiocManager::install("ggplot2")
#3.github的包要写作者
devtools::install_github("jmzeng1314/idmap1")
#最优解
if(!require(string))install.packages("stringr")

包是否下载成功的唯一标准是library()没有error,当提示package not available时,原因可能为:

1.名字写错;

2.安装命令错误;

3.包与R语言版本不符合(极少数);

4.包过时。

首先考虑原因1.2,多搜索多尝试

提示connection、download:网络问题

提示writable、permission:权限问题,管理员方式打开R

下载包报错
下载包报错

读取表格、fread函数

代码语言:text
复制
input <- read.csv("data/input.csv",header = T,row.names = 1,sep = ",")#sep:"," " " ";" "/t"
read.table()

library(data.table)
input <- fread("data/input.csv",header = T,row.names = 1,sep = ",")

Tips:

  1. 输出文件时不要覆盖原文件
  2. 需要用非proj的文件夹内的文件时,写全路径
  3. 多用tab
  4. fread函数读取快且遇空行不易出错

引用自生信技能树马拉松课程小洁老师R语言基础

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据框、矩阵、列表
    • 数据框属性
      • 数据框取子集
        • 删除
          • 下载包
            • 读取表格、fread函数
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档