生物笔记——暑期学习笔记(四)

news2024/12/22 23:19:15

生物笔记——暑期学习笔记(四)

文章目录

  • 前言
  • 一、R篇
    • 1. unname()
    • 2. duplicated()
    • 3. 数据提取
    • 4. 分组
  • 二、生信篇
    • 1. 文本处理常用命令
    • 2. 命令输出
      • 1. 重定向
      • 2. 多命令执行
    • 3. 文本工具
    • 4. 本地hmm鉴定
      • 1. hmmer软件安装
      • 2. 文件准备
      • 3. 基于hmm的鉴定
  • 总结


前言

这一系列文章主要是对于在暑期,老师每周教导的生信方面的课程的课后学习笔记的总结,希望用此方法来巩固我的所学。


一、R篇

1. unname()

x <- c(1,4,6.25)
> x
[1] 1.00 4.00 6.25
x[] <- 7
> x
[1] 7 7 7
x <- c('星'=55,"石"=88,"苑"=99)
> x
星 石 苑 
55 88 99 
#去掉列名
y<- unname(x)
> y
[1] 55 88 99



age <- c(8:88)
name <- paste("wht",seq(8,88))

age[c(3,5,7)]
age[age>15]
df <- cbind(age,name)
x <- df[,]




df <- read.table("D:/class.csv",header = TRUE,sep =",")
head(df)
name <- df[,"name"]
age <- df[,"age"]
head(age)
age1 <- age[c(3,5,7)]
age2 <- age[age>=15]
df1 <- df[df$name%in%c("Mary","James"),]
age3 <- df1[,c("name","age")]
df2<- df[!df$name%in%c("Mary","James"),]
age34 <- df2$age



cut(1:9,breaks = c(0,3,6,9))  #分割
cut(1:88,breaks=3)

table(df$sex)
str(df)
df$sex <- factor(df$sex,levels = c("F", "M"), labels = c("Female", "Male"))
str(df)
tapply(df$age,df$sex,max)


2. duplicated()

duplicated,翻译过来是重复的意思,所以它的用处是判断是否是重复元素,并返回布尔值(方便记忆)

intersect(c(5,7),c(1,5,2,5))
union(c(5,7),c(1,5,2,5))
setdiff(c(5,7),c(1,5,2,5))  #求差集,前一向量中不属于后面向量元素组成的集合

x <- c(6,9,8,6)
> duplicated(x)
[1] FALSE FALSE FALSE  TRUE
> x[!duplicated(x)]
[1] 6 9 8
#或者直接使用unique()
> unique(x)
[1] 6 9 8

3. 数据提取

df <- read.table("D:/class.csv",header = TRUE,sep =",")
> head(df)
   name sex age height weight
1 Alice   F  13   56.5   84.0
2 Becka   F  13   65.3   98.0
3  Gail   F  14   64.3   90.0
4 Karen   F  12   56.3   77.0
5 Kathy   F  12   59.8   84.5
6  Mary   F  15   66.5  112.0
name <- df[,"name"]
age <- df[,"age"]
#head(age)

age1 <- age[c(3,5,7)]
age2 <- age[age>=15]

#取出“Mary"和"James"对应的age
df1 <- df[df$name%in%c("Mary","James"),]
age3 <- df1[,c("name","age")]
> age3
    name age
6   Mary  15
13 James  12

#取出其他人的
df2<- df[!df$name%in%c("Mary","James"),]
age4 <- df2[,c("name","age")]

4. 分组


#分割,通过对breaks参数的设置,来分割连续性变量
> cut(1:9,breaks = c(0,3,6,9))  
[1] (0,3] (0,3] (0,3] (3,6] (3,6] (3,6] (6,9] (6,9] (6,9]
Levels: (0,3] (3,6] (6,9]
cut(1:88,breaks=3)



> table(df$sex)

 F  M 
 9 10 

> str(df)
'data.frame':	19 obs. of  5 variables:
 $ name  : chr  "Alice" "Becka" "Gail" "Karen" ...
 $ sex   : chr  "F" "F" "F" "F" ...
 $ age   : int  13 13 14 12 12 15 11 15 14 14 ...
 $ height: num  56.5 65.3 64.3 56.3 59.8 66.5 51.3 62.5 62.8 69 ...
 $ weight: num  84 98 90 77 84.5 ...

#将sex变量转换为因子类型,方便分组
df$sex <- factor(df$sex,levels = c("F", "M"), labels = c("Female", "Male"))
#通过对labels参数的设置,改变因子的名称

> str(df)
'data.frame':	19 obs. of  5 variables:
 $ name  : chr  "Alice" "Becka" "Gail" "Karen" ...
 $ sex   : Factor w/ 2 levels "Female","Male": 1 1 1 1 1 1 1 1 1 2 ...
 $ age   : int  13 13 14 12 12 15 11 15 14 14 ...
 $ height: num  56.5 65.3 64.3 56.3 59.8 66.5 51.3 62.5 62.8 69 ...
 $ weight: num  84 98 90 77 84.5 ...


#根据sex分组并对于age求最大值
> tapply(df$age,df$sex,max)
Female   Male 
    15     16 

二、生信篇

1. 文本处理常用命令

less命令

打开并查看文件内容, less -SN (按行查看),按 q 退出 ; 支持直接查看压缩文件

示例: less -SN example.axt
请添加图片描述

wc 命令

简单统计文件内容
-c 只显示 字节数
-l 只显示行数
-w 只显示字数

$ wc example.axt
4    3 1755 example.axt

$ wc -c example.axt
1755 example.axt

$ wc -l example.axt
4 example.axt

$ wc -w example.axt
example.axt

可以得知该文件中的字节数为1755,行数为4,字数(是一个文本中的单词数量。在计算字数时,通常以空格或其他标点符号作为单词之间的分隔符)为3.

diff 命令

比较两个文件的不同

-a :只逐行比较文本文件
-b :忽略空格
-B :忽略空行
-c :显示全部内容,并标出不同之处

请添加图片描述

比如,我比较了一下sort.txt 和 file 两个文件。第一行的"9,13c9,14" 表示的是前一个文件的9到13行与后面文件的9到14行是不同的。

sort 命令

-r :降序输出
-n :以数值来排序
-o :输出到新文件

请添加图片描述

uniq 命令

比较相邻的行,显示不重复的行
-i :忽略大小写
-c :计数

在这里插入图片描述

命令 练习

在这里插入图片描述

2. 命令输出

1. 重定向

> 代表以覆盖的方式,将输出内容写入到指定文件
>> 代表以追加方式输出
命令 >> 文件 A 2>> 文件 B :正确的输出到 A 文件中,错误的输出到 B 文件中

在这里插入图片描述

2. 多命令执行

命令 1 ;命令 2 (两个命令互不干扰)
命令 1 && 命令 2 (只有前者执行,后者才能执行)
命令 1|| 命令 2 (只要前者能执行,后者就不执行;前者不执行,后者就顶上)

在这里插入图片描述

3. 文本工具

grep 、 sed 、awk

有关更多信息,请看
Linux中文本工具应用(Linux入门六)

4. 本地hmm鉴定

1. hmmer软件安装

mamba 是一个基于 Python 的 CLI 工具,被认为是 conda 的直接替代品,自带多线程下载,可以提高下载速度。

首先安装mamba
安装过程推荐:https://zhuanlan.zhihu.com/p/489499097?utm_id=0

# 创建一个新环境”wht_env1"并安装 iqtree软件
mamba create -n wht_env1 iqtree

安装完成:
在这里插入图片描述

#安装hmmer软件
mamba create -n wht_env2 hmmer

通过mamba安装的软件通常会安装到Conda环境的envs目录下( 安装时设置了环境)

2. 文件准备

hmm 模型文件 : 如 PF03936.hmm
fasta格式的AA序列文件 : 如 Lindera_aggregata.gene.pep

3. 基于hmm的鉴定

 hmmsearch /home/PF03936.hmm /home/Lindera_aggregata.gene.pep >/home/Lagg.PF03936.out

在这里插入图片描述
在这里插入图片描述


总结

本文的R篇主要讲了unname()、duplicated()、因子分组等。生信篇则介绍了一些在Linux中的简单操作命令。同时也学会了根据mamba管理器来下载所需软件,如用于hmm鉴定的hmmer软件等。

两情若是久长时,又岂在朝朝暮暮。

–2023-8-16

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/887438.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

嵌入式系统中如何选择RTC电池?

RTC&#xff08;Real Time Clock&#xff09;是一种用于提供系统时间的独立定时器&#xff0c;它可以在系统断电或低功耗模式下继续运行&#xff0c;只需要一个后备电池作为供电源。在嵌入式系统中&#xff0c;选择合适的RTC电池时非常关键的&#xff0c;它会影响系统时间的准确…

数字化格局下的引领者:百望云通过强制性国家标准GB18030-2022最高级别认证

8月1日,强制性国家标准GB 18030-2022《信息技术 中文编码字符集》实施。8月15日,百望云“绿页阅读器”正式通过中国电子技术标准化研究院强制性国家标准GB18030-2022《信息技术 中文编码字符集》最高级(实现级别3)认证,彰显了百望云在数字化信息处理领域对标国家标准的卓越技术…

元数据治理平台—Datahub安装配置

元数据治理平台—Datahub安装配置 1.安装docker&#xff0c;docker-compose&#xff0c;jq 1.1安装docker 安装docker yum -y install docker 查看版本 docker -v通过下面的命令可以启停docker systemctl start docker // 启动docker systemctl stop docker // 关闭docker1…

安卓的代码加固和其他安全问题

文章目录 安卓加固apk文件结构dex加固过程 其它安全问题 安卓加固 从App的加固技术来看:主流分为dex加密和so加密,目前来看保护dex文件更为重要,因为dex反编译后的java代码可读性更强。 android-ndk: Native Development Kit 官网解释&#xff1a;这套工具使您能在 Android 应…

算法通关村第十关 | 快速排序

1.快速排序的基本过程 快速排序是分治法运用到排序问题的典型例子&#xff0c;基本思想是&#xff1a;通过一个标记pivot元素将n个元素的序列划分为左右两个子序列left和right&#xff0c;其中left中的元素都比pivot小&#xff0c;right的都比pivot的大&#xff0c;然后再次对l…

springboot引入校验注解

引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency><dependency><groupId>jakarta.validation</groupId><artifactId>jak…

Android音视频剪辑器自定义View实战!

Android音视频剪辑器自定义View实战&#xff01; - 掘金 /*** Created by zhouxuming on 2023/3/30** descr 音视频剪辑器*/ public class AudioViewEditor extends View {//进度文本显示格式-数字格式public static final int HINT_FORMAT_NUMBER 0;//进度文本显示格式-时间…

Nginx 解决api跨域问题

环境: nginx 1.22.1 宝塔8.0 php lavarel 在nginx里加入下面的设置 #这里填*就是任何域名都允许跨域add_header Access-Control-Allow-Origin "*";#CORS请求默认不发送Cookie和HTTP认证信息。但是如果要把Cookie发到服务器&#xff0c;要服务器同意&#xff0c…

web连接桌面打开gptmap

一&#xff1a;环境配置 需要的材料&#xff1a; python-3.10.4 我使用的是这个版本的&#xff0c;3.8.10 该版本和以下版本组件组合&#xff0c;验证过能正常运行&#xff08;python 3.6.8测试异常&#xff09; websockify 该项目有python版本和node js版本 noVNC 形式的app…

管理类联考——逻辑——真题篇——按知识分类——汇总篇——一、形式逻辑——性质——第二节——并非命题

真题&#xff08;2012—52&#xff09;—性质—并非之后&#xff0c;所有有的互相变&#xff0c;必然可能互相变&#xff0c;肯定否定互相变。 52.近期流感肆虐&#xff0c;一般流感患者可采用抗病毒药物治疗&#xff0c;虽然并不是所有流感患者均需接受达菲等抗病毒药物的治疗…

excel之数学函数、excel中的通配符

学习excel前需要明确的是事&#xff1a;   在学习excel函数之前&#xff0c;大家需要明确一件事&#xff0c;excel现在设计到了一些新函数&#xff0c;这些新函数只能存在于office365、office2019及更 新版本之中&#xff0c;所以建议大家在学习时安装较新的版本&#xff0c;…

OLED透明屏采购指南:如何选择高质量产品?

着科技的不断进步&#xff0c;OLED透明屏作为一种创新的显示技术&#xff0c;在各个行业中得到了广泛应用。 在进行OLED透明屏采购时&#xff0c;选择高质量的产品至关重要。在这篇文章中&#xff0c;尼伽将为您提供一个全面的OLED透明屏采购指南&#xff0c;帮助您了解关键步…

区间预测 | MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测

区间预测 | MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测 目录 区间预测 | MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测效果一览基本介绍模型描述程序设计参考资料 效果一览 基本介绍 MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测。基于分位…

详细整合Spring+SpringMVC+MyBatis+logback(SSM)项目

整体目录结构 表结构 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.a…

Java中List排序的4种方法

开发过程中经常会遇到读取文件内容的情况&#xff0c;需要判断文件是否为文本文件&#xff0c;及文件编码格式&#xff0c;防止无法读取内容或乱码出现情况。 我们可以通过 java.io.File 类包找出文件是目录还是常规文件。java.io.File 类包含两种方法&#xff0c;它们分别是&…

[机器学习]特征工程:主成分分析

目录 主成分分析 1、简介 2、帮助理解 3、API调用 4、案例 本文介绍主成分分析的概述以及python如何实现算法&#xff0c;后续会再出一篇关于主成分分析算法原理讲解的文章&#xff0c;敬请期待&#xff01; 感谢大家支持&#xff01;您的一键三连&#xff0c;就是我创作的…

深入解析 Axios Blob 的使用方法及技巧

在 Web 开发中&#xff0c;处理文件传输是一个常见的需求。Blob&#xff08;二进制对象&#xff09;是一种表示二进制数据的方式&#xff0c;常用于处理文件和多媒体数据。本文将介绍如何使用 Axios 和 Blob 来处理文件传输。 Axios Blob 概念 在开始之前&#xff0c;让我们先…

智慧水利利用4G物联网技术实现远程监测、控制、管理

智慧水利工业路由器是集合数据采集、实时监控、远程管理的4G物联网通讯设备&#xff0c;能够让传统水利系统实现智能化的实时监控和远程管理。工业路由器利用4G无线网络技术&#xff0c;能够实时传输数据和终端信息&#xff0c;为水利系统的运维提供有效的支持。 智慧水利系统是…

stm32_ADC电源、通道、工作模式

0、ADC功能框图 1、ADC的电源 1.1、工作电源 VSSAVSS&#xff0c;VDDAVDD&#xff0c;简单来说&#xff0c;通常stm32是3.3V&#xff0c;ADC的工作电源也是3.3V&#xff1b; 1.2、参考电压 VREF和VREF-并不一定引出&#xff0c;取决于封装&#xff0c;如果没有引出则VREF连接到…

Debian查询硬件状态

很早以前写过一个查询树霉派硬件状态的文章&#xff0c;用是Python写的一个小程序。里面用到了vcgencmd这个测温度的内部命令&#xff0c;但这个命令在debian里面没有&#xff0c;debian里只有lm_sensors的外部命令&#xff0c;需要安装&#xff1a;apt-get install lm_sensors…