一对ISCN数据。
ISCNSNAKE的Python项目详细描述
iscnsnake:核型条目的iscn结构和数值分析
iscnsnake是与iscn一起使用的工具:用于 用python 3.7编写的细胞命名法。存储库包含 三个python文件,一个是模块的核心(iscnparser.py)和 第二个(run_snake.py)是一个快速脚本,它执行 ISCNParser。大多数功能都可以通过控制台菜单访问 运行脚本时打开,但如果要自动处理多个文件 或者做一些更复杂的事情,建议您导入 模块到你自己的脚本。第三个脚本(quick_run_snake.py) 以默认设置运行iscnparser,用户只需指定 Mitelman数据库在其计算机上的位置,所需的输出 文件夹和文件名,以及它们希望用作筛选器的任何条件。对于一个 有关如何使用这些过滤器的说明,请参阅readthedocs.org/iscnsnake/
系统要求
python 3.6或更高版本(强烈建议使用anaconda)
python模块
- 熊猫
- 努比
- 易于安装(用于安装)
安装
- 打开下载文件夹中的终端或命令行(此文件夹)。
- 输入以下内容:
易于安装--始终解压缩。
- 您应该能够从任何地方运行该程序,并附带即将发布的说明。
如何使用
快蛇
以默认设置运行iscnsnake.parse_文件,因此如果要更改对克隆、文件名或分析像差的处理,必须与run_snake.py提供的菜单进行交互。供绝大多数人使用 案例这个版本已经足够了。
安装后,可以在终端或命令提示符下输入以下提示,从任何位置运行quick_snake:
python-m iscnsnake.quick_snake[-选项]
这也可以通过进入交互模式(只需键入python)然后:
导入iscnsnake.quick_snake
如果没有指定选项,程序将要求一些用户输入。这些也可以通过命令行选项指定。
[-f]:用于Mitelman数据库的选定行和列的Mitelman筛选器。
过滤语法是"column:attribute"。例如,如果您只想选择地形显示为乳腺的病例,您可以输入"地形:乳腺"作为过滤器。如果您想添加额外的过滤器,例如只想指定具有相同地形的腺癌,请创建具有相同语法的第二个过滤器,并用两个正斜杠将其分开。
示例:"拓朴学:乳腺//拓朴学:腺癌"。
双斜杠用作逗号,空格和破折号都在mitelman数据库的属性中。过滤器限制哪些类别是可接受的 因此,可以通过添加更多过滤器来分析多种类型。
示例:"拓朴学:乳腺//拓朴学:肺//拓朴学:腺癌" 这将分析所有乳腺癌和肺腺癌
[-p]:文件前缀,确定输出文件的名称。ex.-p skeleton使输出文件skeleton_deepdel.txt,skeleton_deepamp.txt [-o]:输出文件夹的名称,如果它不存在,它将生成一个。默认为当前目录。 [-v]:冗长。如果指定,将输出它遇到的每个ISCN。如果您不确定您的过滤器是否正确使用了过滤器,但确实使程序速度慢了一点,则此选项非常有用。 [-i]:mitelman数据库的纯文本文件的路径
逐步教程:
在这个例子中,我将使用下载中包含的mitelman.txt文件,来分析 视网膜母细胞瘤。
- 安装后,导航到所需数据文件所在的文件夹。
- 输入命令: python-m iscnsnake.quick_snake-i-p rb-o视网膜母细胞瘤-v
然后将提示您添加筛选器。既然我们想分析视网膜母细胞瘤,我们应该进入 "地形图:眼睛/地形图:视网膜母细胞瘤"
然后您将看到到终端的输出(因为您指定了verbose)和从 "视网膜母细胞瘤"文件夹中的分析
具有许多实验设置的程序的完整版本可以在以下提示下运行:
python-m iscnsnake.run戋snake
这也可以在交互模式下完成。
这将打开一个菜单,允许您配置许多选项。下面是对每个更复杂的选项所做的简要描述。许多选项只需指定文件名,而且应该相当自我解释。
1—输入文件名 必修的。输入包含核型数据的文件的路径。 例如:../../mitelman.txt
2——输入数据类型(ISCN/Mitelman) 可以设置为iscn或mitelman。默认ISCN。mitelman是数据库的文本版本 在中,如mitelman.txt中提供的。iscn是一种格式,iscn格式的每一个核型都单独在一条线上, 如iscn_example.txt中所示
3—克隆处理
将其设置为以下3个选项之一: 仅限第一个:只分析每个ISCN中的第一个克隆,适用于克隆核型较少的小数据集 一个或两个10+克隆的大规模核型 分离:将每个克隆作为单独的患者进行分析,您的频率百分比将非常低,我 我个人不推荐这个选项。 合并:从所有克隆核型中创建一个一致的核型
4—输出到文件
如果这是错误的,您将没有输出。如果你只需要原始数据就可以了。使用这个你会有 若要更改调用run_snake的方式,或随后将其分配给变量。
6——输出模式 相对如果你想要百分比,minmax如果你想要它是介于0和1之间的结果(对于机器学习 可能还有其他目的)\
7——电流滤波器
按照Quick_Snake的说明输入过滤器,但不要用双斜杠分隔,只需输入每个 一个单独的。
还可以通过导入iscnsnake.iscnparser将iscnparser算法的元素合并到脚本中。 然后根据需要调用函数和类。
15——分析依赖关系 将列出各种异常的共现情况。非常非常非常慢。创建列表 Circos格式的链接。
16—依赖分位数 修剪指向选定分位数的链接。有用的,因为大多数依赖矩阵最终都有几十万个 共同发生的。
18—分析错误 如果您想要一个包含不可分析核型的每个实例的单独文件,请设置为true。可以使用 很容易检查你自己的核型,以检查正确的ISCN语法。会试图解释错误 但不是很有描述性。
20--详细 如果希望程序读取的所有核型都打印到控制台,请设置为true。(与-v in相同 快蛇)
作者
- connor denomy(connordenomy@gmail.com)-主要作者 如果您对使用本程序有任何疑问,请随时给我发电子邮件。
致谢
- Samuel Germain在Shell/Perl中创建了这个程序的原型,并为核心算法提供了基础
- Bjorn Haave协助
- Vizecaoumar实验室