- 生信地基系列--常规分析流程
可能性之兽
还在到底搜索一些R的分析流程吗?biocondutor已经给你准备好了29篇Bioconductor-BiocViewsimage.png注释流程生物导体可以导入多种与序列相关的文件类型,包括Fasta、fastq、BAM、VCF、gff、bed和wig文件等。包支持常见的和高级的序列操作操作,例如修剪、转换和对齐。领域特异性分析包括质量评估、ChIP-seq、差异表达、RNA-seq和其他方法。
- 批量转换基因名
BeeBee生信
做通路富集分析常需要批量进行基因ID转换,总结了3种简便方法与大家分享。方法1和2依赖于基因组注释R包,如果无相应物种R包就必须用方法3。好在的是常用物种人、小鼠、大鼠等都是有的,一般能满足需要。基因组注释R包全集在网站Bioconductor-3.9AnnotationDataPackages查看,如我们能在里面找到人基因组注释R包org.Hs.eg.db,我们安装这个注释包,就能用方法1和2转
- R语言杂谈(一)
爱思考的照
首先,你需要一个Rstudio,其次每一个项目需要一个文件夹以方便自己且路径中不要出现中文和空格,如果需要请用下划线替代。1.安装R包if(!require("tidyr"))install.packages("tidyr",update=F,ask=F)#或者选择安装Bioconductor上的R包if(!require("limma"))BiocManager::install("limma"
- ClusterProfiler做GO、KEGG富集(一)
南栀ioo
今天新学会了clusterprofiler,把学习过程记录下来。Clusterprofiler是Y叔开发的一个R包,功能强大,常更新,还有美观的可视化图片。安装source("http://www.bioconductor.org/biocLite.R")biocLite("clusterProfiler")browseVignettes("clusterProfiler")#查看关于cluste
- 2019-12-30 作业2,总结ID转换需要的数据包
程凉皮儿
前天的作业用偷懒的方法完成后,很惭愧,虽然后来也找到了转换ID的代码,但是确实没有太多的编程思维,还是需要训练。上次拿到的是人的genesymbol,转换成"ENTREZID"的geneID,而且如果丢失太多的情况下需要先转换成ENSEMBL再转。所以今天来总结一下,争取记住一个包:参考学习资料:http://www.bioconductor.org/packages/release/data/a
- 非模式物种GO/KEGG富集分析
谢俊飞
前言:微博参与话题#给你四年时间你也学不会生信#先前的富集分析教程[1]主要是以模式物种人为例子,展开的分析,今天在B站看了孟浩巍视频教程[2],学习新的技能,豁然开朗,欣然记之。本文主要针对非模式物种,但是有参考基因组可用1.R包安装及database下载#non-model,buthavethegenome>source("https://bioconductor.org/biocLite.R
- 使用OmicCircos包--绘制基因圈图
小杜的生信筆記
本期内容为[R语言可视化-精美图形绘制系列]--使用OmicCircos包--绘制基因圈图教程网址:教程可以查看OmicCircos帮助文档也可以(OmicCircos_vignette.pdf(bioconductor.org)),里面讲的非常详细。也可以在我们的社群中获得。本教程代码(搬砖)1.1安装包if(!requireNamespace("BiocManager",quietly=TRU
- 2020-06-06 day6 导入dplyr包---cat
CAT_6430
1.设置镜像网站,用于快速下载包(1).初级模式运行这两条命令,对应清华镜像网站;下次再打开Rstudio会发现,下载Bioconductor可能还是会回到官方镜像,可以通过options()$BioC_mirror命令查询是否是需要的镜像网站。options("repos"=c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))options(
- 2021-07-24 R包maftools从GitHub安装报错记录
我们一起舔过铁栏杆
屏幕截图2021-07-24205817.png从GitHub里面安装R包maftools失败。报错显示如图所示。有趣的是,从bioconductor安装就成功了。
- 学习小组Day6笔记--Yoda
UseeseeU0
学习任务:学习R包1.检查镜像检查CRAN镜像是否配置完成:options()$repos2.在Rstudio中设置自定义CRAN和Bioconductor的下载镜像#options函数就是设置R运行过程中的一些选项设置options("repos"=c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))#对应清华源options(BioC_mi
- 使用clusterProfiler给非模式物种做富集分析的一些参考资料
小明的数据分析笔记本
1https://guangchuangyu.github.io/cn/2017/07/clusterprofiler-maize/#disqus_thread非模式生物玉米玉米虽然是非模式物种,但是研究的人也挺多的,注释信息也非常完整了2https://bioconductor.statistik.tu-dortmund.de/packages/2.12/bioc/vignettes/clust
- 四、函数和R包
Kururu1799
生信技能树数据挖掘课程学习笔记1.函数与参数(1)形式参数与实际参数seq(from=3,to=21,by=3)函数seq形式参数fromtoby,函数作者设计的,熟练后可不写实际参数3213,使用者可改的(2)写函数的函数(3)默认参数作者会设计很多参数,但只有前1~n个是必须填的,其他的参数都有默认值。2.R包(Rpackage)介绍3.R包来源(1)CRAN网站(2)Bioconductor
- 报错:ERROR: lazy loading failed for package
微光**
r语言
ERROR:lazyloadingfailedforpackage常用的服务器崩了只能换台服务器,新的服务器好多R包都没有安装,今天安装DESeq2居然报错了各种R包,如果不在R语言官网上,那它极有可能在Bioconductor或者Github上我是用的以下安装方法,然后报错BiocManager::install('DESeq2')然后我使用Github(https://github.com/)
- Day 6 Joey
连店
R包的学习1.啥是R包R包是多个函数的集合,一般从Bioconductor网站下载,这些R包可以进行统计以及图表的制作,不同的R包行使的功能不同,此处以dplyr为例。2.安装和加载R包2.1镜像设置在使用Rstudio的时候为了加速包的下载,都会配置一个国内镜像初级模式打开Rstudio-tools-Globaloptions-packages-change-CHINA-(Beijing)...
- 生信人的20个R语言习题-高级
DrKu
安装一些R包:数据包:ALL,CLL,pasilla,airway软件包:limma,DESeq2,clusterProfiler工具包:reshape2绘图包:ggplot2不同领域的R包使用频率不一样,在生物信息学领域,尤其需要掌握bioconductor系列包。if(!require(ALL))BiocManager::install("ALL")if(!require(CLL))BiocM
- OSCA单细胞数据分析笔记-14、Empty/Doublet droplet
小贝学生信
对应原版教程第15、16章http://bioconductor.org/books/release/OSCA/overview.html现行主流的Droplet-based单细胞测序技术主要思路是一个磁珠捕获一个细胞置于油包水的腔室里完成添加标签、建库操作。但在磁珠捕获的过程会出现未捕获到细胞或者两个细胞的异常情况。这就需要我们在分析单细胞数据中识别、过滤掉这些badbarcode(cell)。
- 利用clusterProfiler进行富集分析
谢俊飞
前言:微博参与话题#给你四年时间你也学不会生信#主要参考:GEO数据挖掘小尝试:(三)利用clusterProfiler进行富集分析Y叔开发的R包clusterProfiler的确是最好用的,没有之一,可参看为Y叔疯狂打call1、安装clusterProfiler>source("http://bioconductor.org/biocLite.R")>biocLite('clusterProf
- Rstudio安装(笔记一)
YX_Andrew
mac换到win,简单记录。首先安装R,下载好一直点击安装。然后下载Rstudio,一植点击安装,找到安装目录文件夹下的bin/Rstudio,属性为管理员控制,然后开始使用Rstudio。查看R包安装的位置,并设置权限.libPaths()安装CRAN上的R包先在Tools/Global设置好全局的内容。install.packages("tidyr")其余类似安装Bioconductor上的R
- 学习小组Day6笔记--LBB
LBB
今天的学习内容是R包安装和dplyr函数的运用一、安装和加载R包镜像设置1.Tools-Options-Packages设置CRAN的镜像,单不能下载Bioconductor的包1.png2.png2.R的配置文件.Rprofile用file.edit('~/.Rprofile')来编辑文件,在编辑器输入options代码options("repos"=c(CRAN="[https://mirro
- 2019-02-19 volcano plot
e8a37405cb53
https://bioconductor.org/packages/devel/bioc/vignettes/EnhancedVolcano/inst/doc/EnhancedVolcano.html#installation
- GDAS003-Bioconductor与基因组级数据分析简介
backup备份
title:GDAS003-Bioconductor与基因组级数据分析简介date:2019-09-0312:0:00type:"tags"tags:Bioconductorcategories:GenomicsDataAnalysisSeries前言本篇笔记主要是介绍了Bioconductor与基因组级数据分析的关系。R语言,R包与仓库(repositories)学习这一系列课程的前提是你已经有
- 2018-10-11
一路向前_莫问前程_前程似锦
使用GEOquery包if(T){source("http://bioconductor.org/biocLite.R")options(BioC_mirror="http://mirrors.ustc.edu.cn/bioc/")biocLite("GEOquery")library(GEOquery)eSeteSet$GSE62832_series_matrix.txt.gzExpressio
- docker 中运行Rsudio
伍鸿荣
dockerrun--namerstudio-ePASSWORD=bioc-p8787:8787-v/mnt/public:/home/rstudio/public_data-v/home/user/R_workdir:/home/user/R_workdirbioconductor/bioconductor_docker:devel
- 用EnhancedVolcano 绘制火山图
欧阳松
最近发现一个新包EnhancedVolcano,画火山图令人发指的简单,而且用户自主设置颜色、形状、大小和阴影等参数定义不同的绘图属性,还可以通过添加连线的方式有效避免数据点之间的重叠现象,强烈分享一下:介绍来源:https://www.bioconductor.org/packages/release/bioc/vignettes/EnhancedVolcano/inst/doc/Enhance
- GO.db:存储Gene Ontology信息的R包
生信修炼手册
欢迎关注”生信修炼手册”!在生信分析领域,R语言由于其简单易用的特点和良好的生态环境,占用重要的一席之地。其中,Bioconductor作为生信分析专用的R语言社区,提供了许多的R包。Bioconductor上的所有R包可以分成4大类别,示意图如下software类型的R包用于执行某项具体的分析内容,比如edgeR,DESeq2等,AnnotationData类型的包在R中存储了对应的数据库,比如
- 《生物信息学生R入门教程》读书笔记 Chapter 1
小潤澤
前言最近在阅读欧剑虹老师《生物信息学生R入门教程》非常适合于刚入手NGS的初学者使用,这里我仅做我个人的读书笔记使用本书分为八个章节:1.R/Bioconductor简介2.基因芯片的数据分析3.RNA-seq数据分析4.Chip-seq数据分析5.ATAC-seq数据分析6.单细胞RNA-seq数据fenx7.下游分析8.上游分析Chapter1照例我们先介绍下R,基础的语法就不介绍了1.将字符
- bioconductor入门——第一弹
鹿无为
写在前面的废话说话要算数,挨打要立正……既然之前说了要写一个bioconductor系列,那肯定不能食言。image.png当然了,现在天气这么冷,我猜你们肯定不愿意动手撸代码。没关系,咱今天不看代码,不写脚本,写点看起来比较轻松的蹲坑读物image.png太长不看系列今天没有太长不看系列……既然是蹲坑读物,那必须要长,要有意思,能让你蹲的腿脚发麻才算是成功image.png废话超多系列你既然选择
- 自动批量安装加载cran, bioconductor和github三个平台的所有的R包
邢博士谈科教
GEO数据挖掘生信分析视频教程可视化作图大全R语言和数据挖掘分析入门教学r语言github数据分析数据挖掘linux
自动批量安装加载cran,bioconductor和github三个平台的所有的R包R包管理自动批量安装加载cran,bioconductor和github三个平台的所有的R包自动安装cran,bioconductor和github三个平台的R包auto_install0){install.packages(new.cran.pkgs)#安装那些还没有安装的包}}if(!is.null(bio.p
- OSCA单细胞数据分析笔记-9、Clustering
小贝学生信
对应原版教程第10章http://bioconductor.org/books/release/OSCA/overview.html“物以类聚,人以群分”分群步骤即将基因表达(降维结果)相似的细胞归为同一个群体,往往对应一种特定的细胞类型或者细胞轨迹状态。从一步开始,就可以开始叙述我们的生物学故事了~源网,侵删~笔记要点1、clustering是一个显微镜2、基于图聚类的分群3、其它分群算法(k均
- 安装SingleR之前,先看看它的数据库里有没有你要的细胞
小鱼同学的踩坑记录
singleR这个R包,还有它配套的celldex数据库,安装真的好麻烦啊为了安装它,把我的的R升到了最新版,结果更新又很麻烦……好不容易安上了这个包,发现自动注释出来的结果跟我聚类出来的图一对比,不能说是一模一样吧,只能说是毫不相关。最后翻到了celldex数据库里七个参考数据集的具体内容,在这里:https://bioconductor.org/packages/release/data/ex
- Spring4.1新特性——Spring MVC增强
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- mysql 性能查询优化
annan211
javasql优化mysql应用服务器
1 时间到底花在哪了?
mysql在执行查询的时候需要执行一系列的子任务,这些子任务包含了整个查询周期最重要的阶段,这其中包含了大量为了
检索数据列到存储引擎的调用以及调用后的数据处理,包括排序、分组等。在完成这些任务的时候,查询需要在不同的地方
花费时间,包括网络、cpu计算、生成统计信息和执行计划、锁等待等。尤其是向底层存储引擎检索数据的调用操作。这些调用需要在内存操
- windows系统配置
cherishLC
windows
删除Hiberfil.sys :使用命令powercfg -h off 关闭休眠功能即可:
http://jingyan.baidu.com/article/f3ad7d0fc0992e09c2345b51.html
类似的还有pagefile.sys
msconfig 配置启动项
shutdown 定时关机
ipconfig 查看网络配置
ipconfig /flushdns
- 人体的排毒时间
Array_06
工作
========================
|| 人体的排毒时间是什么时候?||
========================
转载于:
http://zhidao.baidu.com/link?url=ibaGlicVslAQhVdWWVevU4TMjhiKaNBWCpZ1NS6igCQ78EkNJZFsEjCjl3T5EdXU9SaPg04bh8MbY1bR
- ZooKeeper
cugfy
zookeeper
Zookeeper是一个高性能,分布式的,开源分布式应用协调服务。它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如同步, 配置管理,集群管理,名空间。它被设计为易于编程,使用文件系统目录树作为数据模型。服务端跑在java上,提供java和C的客户端API。 Zookeeper是Google的Chubby一个开源的实现,是高有效和可靠的协同工作系统,Zookeeper能够用来lea
- 网络爬虫的乱码处理
随意而生
爬虫网络
下边简单总结下关于网络爬虫的乱码处理。注意,这里不仅是中文乱码,还包括一些如日文、韩文 、俄文、藏文之类的乱码处理,因为他们的解决方式 是一致的,故在此统一说明。 网络爬虫,有两种选择,一是选择nutch、hetriex,二是自写爬虫,两者在处理乱码时,原理是一致的,但前者处理乱码时,要看懂源码后进行修改才可以,所以要废劲一些;而后者更自由方便,可以在编码处理
- Xcode常用快捷键
张亚雄
xcode
一、总结的常用命令:
隐藏xcode command+h
退出xcode command+q
关闭窗口 command+w
关闭所有窗口 command+option+w
关闭当前
- mongoDB索引操作
adminjun
mongodb索引
一、索引基础: MongoDB的索引几乎与传统的关系型数据库一模一样,这其中也包括一些基本的优化技巧。下面是创建索引的命令: > db.test.ensureIndex({"username":1}) 可以通过下面的名称查看索引是否已经成功建立: &nbs
- 成都软件园实习那些话
aijuans
成都 软件园 实习
无聊之中,翻了一下日志,发现上一篇经历是很久以前的事了,悔过~~
断断续续离开了学校快一年了,习惯了那里一天天的幼稚、成长的环境,到这里有点与世隔绝的感觉。不过还好,那是刚到这里时的想法,现在感觉在这挺好,不管怎么样,最要感谢的还是老师能给这么好的一次催化成长的机会,在这里确实看到了好多好多能想到或想不到的东西。
都说在外面和学校相比最明显的差距就是与人相处比较困难,因为在外面每个人都
- Linux下FTP服务器安装及配置
ayaoxinchao
linuxFTP服务器vsftp
检测是否安装了FTP
[root@localhost ~]# rpm -q vsftpd
如果未安装:package vsftpd is not installed 安装了则显示:vsftpd-2.0.5-28.el5累死的版本信息
安装FTP
运行yum install vsftpd命令,如[root@localhost ~]# yum install vsf
- 使用mongo-java-driver获取文档id和查找文档
BigBird2012
driver
注:本文所有代码都使用的mongo-java-driver实现。
在MongoDB中,一个集合(collection)在概念上就类似我们SQL数据库中的表(Table),这个集合包含了一系列文档(document)。一个DBObject对象表示我们想添加到集合(collection)中的一个文档(document),MongoDB会自动为我们创建的每个文档添加一个id,这个id在
- JSONObject以及json串
bijian1013
jsonJSONObject
一.JAR包简介
要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:
1.commons-lang-2.0.jar
2.commons-beanutils-1.7.0.jar
3.commons-collections-3.1.jar
&n
- [Zookeeper学习笔记之三]Zookeeper实例创建和会话建立的异步特性
bit1129
zookeeper
为了说明问题,看个简单的代码,
import org.apache.zookeeper.*;
import java.io.IOException;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ThreadLocal
- 【Scala十二】Scala核心六:Trait
bit1129
scala
Traits are a fundamental unit of code reuse in Scala. A trait encapsulates method and field definitions, which can then be reused by mixing them into classes. Unlike class inheritance, in which each c
- weblogic version 10.3破解
ronin47
weblogic
版本:WebLogic Server 10.3
说明:%DOMAIN_HOME%:指WebLogic Server 域(Domain)目录
例如我的做测试的域的根目录 DOMAIN_HOME=D:/Weblogic/Middleware/user_projects/domains/base_domain
1.为了保证操作安全,备份%DOMAIN_HOME%/security/Defa
- 求第n个斐波那契数
BrokenDreams
今天看到群友发的一个问题:写一个小程序打印第n个斐波那契数。
自己试了下,搞了好久。。。基础要加强了。
&nbs
- 读《研磨设计模式》-代码笔记-访问者模式-Visitor
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
interface IVisitor {
//第二次分派,Visitor调用Element
void visitConcret
- MatConvNet的excise 3改为网络配置文件形式
cherishLC
matlab
MatConvNet为vlFeat作者写的matlab下的卷积神经网络工具包,可以使用GPU。
主页:
http://www.vlfeat.org/matconvnet/
教程:
http://www.robots.ox.ac.uk/~vgg/practicals/cnn/index.html
注意:需要下载新版的MatConvNet替换掉教程中工具包中的matconvnet:
http
- ZK Timeout再讨论
chenchao051
zookeepertimeouthbase
http://crazyjvm.iteye.com/blog/1693757 文中提到相关超时问题,但是又出现了一个问题,我把min和max都设置成了180000,但是仍然出现了以下的异常信息:
Client session timed out, have not heard from server in 154339ms for sessionid 0x13a3f7732340003
- CASE WHEN 用法介绍
daizj
sqlgroup bycase when
CASE WHEN 用法介绍
1. CASE WHEN 表达式有两种形式
--简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
--Case搜索函数
CASE
WHEN sex = '1' THEN
- PHP技巧汇总:提高PHP性能的53个技巧
dcj3sjt126com
PHP
PHP技巧汇总:提高PHP性能的53个技巧 用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的函数译注: PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍
- Yii框架中CGridView的使用方法以及详细示例
dcj3sjt126com
yii
CGridView显示一个数据项的列表中的一个表。
表中的每一行代表一个数据项的数据,和一个列通常代表一个属性的物品(一些列可能对应于复杂的表达式的属性或静态文本)。 CGridView既支持排序和分页的数据项。排序和分页可以在AJAX模式或正常的页面请求。使用CGridView的一个好处是,当用户浏览器禁用JavaScript,排序和分页自动退化普通页面请求和仍然正常运行。
实例代码如下:
- Maven项目打包成可执行Jar文件
dyy_gusi
assembly
Maven项目打包成可执行Jar文件
在使用Maven完成项目以后,如果是需要打包成可执行的Jar文件,我们通过eclipse的导出很麻烦,还得指定入口文件的位置,还得说明依赖的jar包,既然都使用Maven了,很重要的一个目的就是让这些繁琐的操作简单。我们可以通过插件完成这项工作,使用assembly插件。具体使用方式如下:
1、在项目中加入插件的依赖:
<plugin>
- php常见错误
geeksun
PHP
1. kevent() reported that connect() failed (61: Connection refused) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET / HTTP/1.1", upstream: "fastc
- 修改linux的用户名
hongtoushizi
linuxchange password
Change Linux Username
更改Linux用户名,需要修改4个系统的文件:
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
古老/传统的方法是使用vi去直接修改,但是这有安全隐患(具体可自己搜一下),所以后来改成使用这些命令去代替:
vipw
vipw -s
vigr
vigr -s
具体的操作顺
- 第五章 常用Lua开发库1-redis、mysql、http客户端
jinnianshilongnian
nginxlua
对于开发来说需要有好的生态开发库来辅助我们快速开发,而Lua中也有大多数我们需要的第三方开发库如Redis、Memcached、Mysql、Http客户端、JSON、模板引擎等。
一些常见的Lua库可以在github上搜索,https://github.com/search?utf8=%E2%9C%93&q=lua+resty。
Redis客户端
lua-resty-r
- zkClient 监控机制实现
liyonghui160com
zkClient 监控机制实现
直接使用zk的api实现业务功能比较繁琐。因为要处理session loss,session expire等异常,在发生这些异常后进行重连。又因为ZK的watcher是一次性的,如果要基于wather实现发布/订阅模式,还要自己包装一下,将一次性订阅包装成持久订阅。另外如果要使用抽象级别更高的功能,比如分布式锁,leader选举
- 在Mysql 众多表中查找一个表名或者字段名的 SQL 语句
pda158
mysql
在Mysql 众多表中查找一个表名或者字段名的 SQL 语句:
方法一:SELECT table_name, column_name from information_schema.columns WHERE column_name LIKE 'Name';
方法二:SELECT column_name from information_schema.colum
- 程序员对英语的依赖
Smile.zeng
英语程序猿
1、程序员最基本的技能,至少要能写得出代码,当我们还在为建立类的时候思考用什么单词发牢骚的时候,英语与别人的差距就直接表现出来咯。
2、程序员最起码能认识开发工具里的英语单词,不然怎么知道使用这些开发工具。
3、进阶一点,就是能读懂别人的代码,有利于我们学习人家的思路和技术。
4、写的程序至少能有一定的可读性,至少要人别人能懂吧...
以上一些问题,充分说明了英语对程序猿的重要性。骚年
- Oracle学习笔记(8) 使用PLSQL编写触发器
vipbooks
oraclesql编程活动Access
时间过得真快啊,转眼就到了Oracle学习笔记的最后个章节了,通过前面七章的学习大家应该对Oracle编程有了一定了了解了吧,这东东如果一段时间不用很快就会忘记了,所以我会把自己学习过的东西做好详细的笔记,用到的时候可以随时查找,马上上手!希望这些笔记能对大家有些帮助!
这是第八章的学习笔记,学习完第七章的子程序和包之后