首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

生物信息Python 05 | Genbank 文件中提取 CDS 等其他特征序列

而NCBI 基因库已经包含有这些信息,但是只有一部分是整理可下载。而剩下一部分可以通过 genbank给出位点信息来提取,个人能力有限,这里只做抛转之用。...from Bio import SeqIO def format_fasta(ana, seq, num): """ 格式化文本为 fasta格式 :param ana: 注释信息...format_seq += "\n" return ana + format_seq + "\n" def get_cds(gb_file, f_cds): """ ...genbank 文件中提取 cds 序列及其完整序列 :param gb_file: genbank文件路径 :param f_cds: 是否只获取一个 CDS 序列 :return...会有详细信息展示,点击 fasta 链接来下载序列 ? 4.2 对于NC,NM,可以用下面的方式来实现 CDS 序列下载,同样对于样本量大序列分析比较低效 ?

4.6K10

Excel编程周末速成班第24课:调试和发布应用程序

同样,如果用于某些数值计算代码产生不正确结果,则也将其视为bug。由于实际上存在无限数量潜在bug,因此无法列出或描述Excel程序可能出现错误。...调试工具 几乎所有bugs都是由两个因素导致——单独工作或组合工作: 程序执行接收到错误路径。 一个或多个变量不正确值。 VBA调试工具旨在跟踪这两种bugs原因。...在中断模式下代码编辑 VBA使你可以在中断模式下修改代码。当你认为已发现问题并希望立即解决该问题时,此功能很有用。然而,进行一些编辑后,VBA无法暂停位置继续执行,必须重置项目才能重新启动。...只需将鼠标指针停留在代码变量名称上,VBA就会弹出一个带有当前值小窗口。如果这还不够,VBA提供了更复杂监视工具。 VBA可以在程序调试期间监视任何变量或表达式值。...大多数bugs是由于变量不正确值和/或程序执行分支不正确造成。 可以在程序任何位置设置断点,以强制程序在该点暂停。 当程序在中断模式下暂停时,可以单步执行代码以查找错误。

5.8K10
您找到你想要的搜索结果了吗?
是的
没有找到

VBA数据类型String

前面说到指针Pointer,其实主要是说了地址函数。得到了变量地址,只能赋值给Long类型,并没有指针作用,无法根据这个记录了变量地址东西来操作变量。...但能得到变量地址,就可以去查看变量内存布局,从而深入了解类型。 VBA里数值类型Integer、Long那些,内存布局比较简单,无非是1个、2个、4个连续字节。...而String类型是有点不一样,有了指针Pointer讲到指针函数,我们就可以对String深入了解一下。 深入了解数据类型有什么用?...通过网上一些资料和自己猜测: 变量本身占用4个字节,用VarPtr可获取地址p VarPtr那个地址p保存值,指向了字符地址,p-4地址处保存是长度信息,4个字节 另外2个是p-6处00 88...,是不是程序退出时候VBA垃圾回收能释放那个内存?

1.4K30

用于处理图表&图形VBA代码大全1

标签:VBA 图表和图形是Excel最好功能之一,它们非常灵活,可以用来进行一些非常高级可视化。本文可以作为在Excel中使用VBA绘制图表指南。...本文中代码示例演示了使用VBA处理最常见图表选项,很好地利用这些代码,自动创建和修改图表。...注意,在Excel 2013,对图表引擎和文档对象模型进行了许多更改,例如AddChart2方法取代了AddChart方法。因此,本文中提一些代码可能无法用于Excel 2013之前版本。...创建一个引用ChartObject内图表变量: Dim cht As Chart Set cht = Sheets("Sheet1").ChartObjects("Chart 1").Chart 创建一个引用工作表内图表变量...: Dim cht As Chart Set cht = Sheets("Chart 1") 现在,可以通过使用cht引用图表来为图表工作表或ChartObject图表编写VBA代码: cht.ChartTitle.Text

51220

VBA掌握循环结构,包你效率提高500倍

2.这些掌握了,你才敢说自己懂VBA 3.VBA变量5年踩坑吐血精华总结 4.VBA重要强制申明,谁看谁明白 image.png 我们先看上次分享案例题目。...「Step」可以正整数和负整数,也可以省略不写;当「Step」省略不写时,值默认为1。 b.「Next xxx」变量 xxx」可以省略不写,但建议完整书写,不省略。...「变量X」1变为10,每次仅增加1,即:x可以1 2 3 4 ...10。...我们可以看到此时程序自动返回「循环开始」地方,由于此时「变量 x = 2」仍然符合「X 1 变为 10 每次增加1」这个区间,因此程序接着运行,一直等到「变量 x = 11」时候,程序会跳出循环...image.png (2)VBA代码排版 “帅气”VBA路,Tab起步 image.png

1.5K00

VBA掌握循环结构,包你效率提高500倍

2.这些掌握了,你才敢说自己懂VBA 3.VBA变量5年踩坑吐血精华总结 4.VBA重要强制申明,谁看谁明白 我们先看上次分享案例题目。...「For xxx = xxx To xxx Step xxx」,表示意思是「变量xxx」xxx变化为xxx,每次增加xxx (2)循环内容 循环内容根据工作需求书写相关执行代码就好,一般都是循环核心代码...「Step」可以正整数和负整数,也可以省略不写;当「Step」省略不写时,值默认为1。 b.「Next xxx」变量 xxx」可以省略不写,但建议完整书写,不省略。...我们来模拟一下上述「For循环结构」程序运行过程: (1)程序读取「循环开始」语句「For x = 1 To 10 Step 1」 由于我们使用了「For循环开始」,并且严格规定了「变量X」1变为...」地方,由于此时「变量 x = 2」仍然符合「X 1 变为 10 每次增加1」这个区间,因此程序接着运行,一直等到「变量 x = 11」时候,程序会跳出循环,执行下一个语句。

24630

VBA身份证号获取信息

1、需求: 身份证号里提取出出生日期、性别。 2、举例: 接着上一次例子,表格汇总完成后,你又得到了一个任务,需要对表格数据进行处理,需要增加出生日期、性别。...可是你一看表格,完了,没有收集出生日期、性别这些信息! 难道要重新收集一次? 3、代码实现 身份证编码是有规律,只要知道了规律,我们就能够从中提取出自己所需要数据。...县级市)代码; 第7-14位数字表示:出生年、月、日; 第15、16位数字表示:所在地派出所代码; 第17位数字表示性别:奇数表示男性,偶数表示女性; 第18位数字表示:校检码 15位身份证规则:...所以,按照这个规则,我们只要提取出对应位置数据就可以了,性别判断第15位或者17位数字,再取2余数就能够判断出来: Function GetGenderFromSFZ(strSFZ As String...第一位到第十七位系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 ; ' 2、将这17位数字和系数相乘结果相加; ' 3、用加出来和除以11,看余数是多少

1.6K50

Excel编程周末速成班第26课:处理运行时错误

程序错误捕捉永远不会被激活。 不幸是,Microsoft尚未提供有关对象内部捕获哪些错误以及将哪些错误传递给VBA进行处理任何信息。...将这些数据类型用于对象引用(而不是使用特定对象类型)使VBA无法提前知道对象方法和属性是什么,从而为各种错误埋下了隐患。...只要数组索引可能超出范围,在尝试给数组赋值或数组读取数据之前,使用LBound和UBound检查索引值。 总是验证用户输入数据。错误常见原因是用户输入不正确数据,例如在需要数字时输入字符串。...最新错误号,如果没有发生错误,则为0。 Description。最新错误简短描述;如果未发生错误,则为空白。 Clear。对象清除错误信息。 发生错误时,使用Err对象获取有关错误信息。...任何后续错误(在该过程)都将被忽略,有关该错误信息将放置在Err对象。你代码可以使用此信息来确定是否发生错误,以及发生错误采取操作。

6.7K30

WPS JS宏——数组Array对象

VBA数组只有很少几个函数可以操作: Ubound 数组上标 Luound 数组下标 Filter 筛选一维数组 Join 将一维String类型数组连接为1个字符串 Array...生成1个Variant类型数组 IsArray 判断1个变量是否是数组 Erase 释放数组所占资源 VBA数组功能比较少,但是在JS,数组也是一种对象,JS已经在这个对象上实现了很多属性和方法...,编程过程中直接调用即可,使用起来就方便了很多: join 和VBA一样,连接为字符串,不需要一定是String类型 push 添加元素到末尾 pop 末尾删除元素,这2个方法不需要使用的人去关注数组是否越界...1个数组构成新数组 slice 创建子数组 ………… 有这么多方法仅仅是因为JS帮忙实现好了,可以简单理解为在VBA,也可以自己去实现这些操作数组函数,然后调用。...应该都知道,这个输出应该是(VBA里数组获取单元格数据后下标是1开始,JS0开始): 行0 列0 value = $A$1 行0 列1 value = $B$1 行1 列0 value =

3.7K30

VBA实战技巧05: 动态调整数组以存储所需数据

学习Excel技术,关注微信公众号: excelperfect 数组是一种常用数据结构,可用来存储一组相同类型数据,你可以将一个数组变量视为一个迷你电子表格,通过引用数组位置来存储或者获取数据...下图1所示示例是一个名为MyArray一维数组,包含有6个元素。注意,数组索引通常0开始。 ?...如果调整数组大小同时,想要保留之前存储在数组数据,则需要使用Preserve关键字,告诉VBA在增加数组存储容量时,保留原来存储在数组数据。...ReDim Preserve MyArray(i) MyArray(i) = rng.Value i = i + 1 Next rng End Sub 方法3:带有分隔符字符串创建数组...PopulateArray5-2() Dim MyArray() As Variant '创建数组 MyArray = Range("A1:D3") End Sub 方法5:中提取数据直接创建数组

3.5K20

错误捕获

VBA,运行时错误发生时候,会直接中断程序运行,如果仅仅是程序使用者,可能完全不会代码,那么出现这种中断程序运行状况,使用者就会不知所措了。...如果能够在代码里捕获错误,并给出提示信息,那么使用者即使不懂代码,也能根据提示信息解决一些问题。...,一个合法名字,在名字后面加上英文冒号就可以。...上面程序意思就是,在On Error GoTo ErrTest语句之后,一旦代码出现了错误,程序就会出错地方跳转到标签ErrTest,然后继续执行代码。...因为作为写程序的人,必须要考虑到使用者情况,给使用者出现运行时错误是不应该,所以写程序过程,一定要非常严谨,尽量在所有的程序中都加上错误捕获代码。

2.7K10

【大招预热】——Power BI报告奥义你可能只知道一半?

直播我提到一个现象,即大家往往倾向于将Power BI可视化做成数据看板式,即类似如下这种: 这是很自然做法,毕竟BI本身赋予用户能力就是可以主动地、轻松地【任意维度】和【任意路径】进行数据分析...这种做法尤其适合于电子大屏(如流量监控、公司运营状况可视化)、报告者做动态演讲汇报、以及管理者自主地看板挖掘信息。它借助联动切片钻等功能,可以突破静态页面限制,动态地拓展和提升信息数量和质量。...比如报告用户(高层领导)无暇自行探索数据,而你又无法进行当面阐述汇报;又或者你需要呈现给那些对报告内容和领域一无所知观众。...题外话,在Excel里用VBA也能实现这个需求,比如下图这个vba制作仿NBA文字动态直播。...上图下划线文字来源于经过计算结果或数据维度中提文字,其余文字为AI按自然语言语法(如英文)规则生成串联语句。

1.6K30

VBA程序运算符

大家好,本节将详细介绍VBA运算符,它们是VBA连接桥梁。 常用运算符大部分是数学课本中学过内容,但它们是VBA运算基础,所以本节将作汇总介绍。...下面会分别说明VBA四种运算符,顺带说下通配符,最后介绍运算符优先级,即不同种类运算符同时出现时运算顺序。...整除\即两数相除整数,如5\2=2。mod求模运算时指两数相除余数,如5 mod 2 =1,经常用于判断奇偶性。...显示内容需要变量和字符串连接,其中i、j和i*j都是变量变量运算,不需要加英文引号“”,而“X”和“=”都是字符串,需要英文引号。...运算符按运算优先级由高到低依次顺序如下图所示:(相同优先级运算符,在表达式中出现时,按左向右顺序运算即可。)

1.4K30

VBA变量5年踩坑吐血精华总结

是的,那么我们用VBA如何实现呢? image.png 我们观察发现:行号是变化,而且是「正向递增加1」规律。 在VBA,我们将这种根据需要能够随时变化称为变量。...其实,「变量」这个概念,我们在初中都已经能够运用出神入化了,比如: image.png 这里面,我们通常称x为自变量,能够任何变化数字,而y(因变量)就会得到相应计算结果。...我们用x代替,那么程序就变为: image.png 我们又知道,变量x变化是依据「单元格B2」内容变化而变化,也就是: image.png [备注] 在VBA,「=」专业术语是「赋值」 即...但是这样操作,有以下几点缺点: 1)程序写起来特别的长,非常容易出错; 2)代码不易维护,修改难度大; 3)VBA内存读取变量时间要远低于读取单元格时间; 因此,可以总结使用变量有以下好处(拿小本本记好...但是,大家需要注意给VBA变量取名字 需要注意以下几点: (1)尽量使用有意义名字,且尽量使用英文或拼音命名 一方面,变量命名有意义就是大家可以读懂,知道变量表达意义,增强代码可读性。

1.6K00

样本分析 | 当“网络冲突”诱饵文件被用于真实攻击事件

dropper和载荷与之前版本非常相似,但作者修改了一些公开信息(如MUTEX名称,混淆密钥等),我们认为行动参与者之所以修改这些信息,是因为想要避免基于公共IOC检测。...VBA 这个Office文档包含一个VBA脚本,以下是代码: ?...此代码目标是文档属性(“theme”,“company”,“type”,“comment”以及“Hyberlink base”),通过查看文件属性,这些信息可以直接Windows资源管理器中提取...提取信息被组合在一起形成一个变量,其使用base64编码以获取被写入磁盘Windows库。这个文件被命名为netwf.dat。之后该文件就会由rundll32.exe通过KipSvc导出执行。...VBA脚本最后部分显示这两个文件属性被设置为“隐藏”。此外,我们也可以看到两个VBA变量名:PathPid(可能是有效载荷路径),PathPidBt(可能用于批处理)。

1.3K100

在Excel自定义上下文菜单(下)

标签:VBA,用户界面 本文接上两篇文章: 在Excel自定义上下文菜单(上) 在Excel自定义上下文菜单() 上下文菜单技术和技巧 下面的内容展示了如何修改本文中提代码,以使过程更具灵活性...正如在这条语句中所看到,要禁用上下文菜单上控件,必须知道该控件ID(idMso)。然而,这可能是一个问题,因为这些信息并不适用于特定上下文菜单上每个控件。...小结 在Excel 97至Excel 2003,可以使用VBA代码将控件添加到每个上下文菜单,但无法使用RibbonX更改上下文菜单。...在Excel 2007,可以使用VBA代码将控件添加到几乎每个上下文菜单。但是,无法使用VBA更改某些上下文菜单,例如形状和图片上下文菜单。此外,无法使用RibbonX更改上下文菜单。...在Excel 2010及后续版本,可以使用VBA代码将控件添加到几乎每个上下文菜单。使用VBA更改某些上下文菜单限制与Excel 2007相同。

2.6K20

autocad二次开发资料总结

语言优点是语法规则简单 VisualLISP 引入面向对象LISP开发环境 1986年发布AutoLISP以来到现在二十余年来,Autodesk公司推出了AutoLISP、ADS、VBA...怎样对AutoCAD进行二次开发 AutoCAD 2.18开始推出AutoLISP开始到现在,我们所能使用开发工具主要有:AutoLISP、VisualLISP、VBA、COM外部接口、ObjectARX...ARX最早是在AutoCAD R13中提,但在AutoCAD R14,ARX就被ObjectARX所代替。...特别要强调是,ActiveX与AutoCAD交互操作很慢,若需要在外部程序中一边运算一边交互操作重复迭代,将耗费大量时间,如同死机 值得注意是,AutoCAD 2010版本开始,VBA不在随...中提新命令WebLoad来加载你页面,也可以开发一个很小桩Stub模块来加载你页面。

2.9K32

Excel VBA项目实战

image.png 前面的《Excel VBA:办公自动化》和大家分享了VBA常用基础知识,就有同学留言问我:猴子老师,能不能出一个项目实战案例,可以把前面的知识都应用起来。...从上面的分析,我们进一步明确了思路,也就是从一个表格中提取指定内容,然后将该内容写入另一个表格指定位置。 下面我们将这个案例VBA代码展示出来,然后对每一句拆解分析。...变量「i」用来循环每一行数据,变量「zhanhao」 「zhanming」 「summoney」用来储存「基础数据」中提需要写入「票证模板」需要内容。...然后,我们将这些意思联合起来,用大白话说就是:程序调用工作表计数函数,首先,计算表格1-基础数据D列非空单元格个数,然后将计算这个值「赋值」给左边变量「totalrow」。...因此,这里仅是向大家展示一个思路,当我们遇到一些我们见过内容,我们要综合运用各种储备对其有一个大概判断,做到学习灵活应对。 推荐:人人都需要数据分析思维 image.png

1.6K50

数组Array

1、数组特点 文档可以看到,数组几个特点: 具有相同内在数据类型 每个元素具有唯一识别索引号 这2点很好理解,1个数组里面只能存放一种数据类型东西,每个元素都能通过索引号找到。...Excel VBA提供了修改为1方法,强烈建议不要用这个方法,尽量去习惯这个下标0。 (个人看法):这种设计应该也是为了照顾非专业人员吧,毕竟人还是习惯1开始。...不过以后程序写多了,你会发现从0开始在一些循环、余数等等操作还是非常方便。...要使用数组某个元素也非常简单,直接引用它下标就可以,比如我们给下标10元素赋值1000: Arr(10) = 1000 很简单方便,不过这是任何一个语言数组都有的功能,在Excel VBA...3、举例: 继续说Function里面的例子,我们当时是用For循环1到100一个一个读取单元格数据来处理,这种处理方法在碰到数据量比较大时候,你会明显感觉到程序运行速度很慢,这是因为VBA

2K20
领券