一个简单的工具,它获取一个动物ID列表,为给定的ID及其所有祖先的ID提取一个谱系文件,用排序后的ID构建一个新的谱系文件,并将输出转储到一个新文件。
pedRefiner的Python项目详细描述
pedRefiner的建议用法:pipeline()方法。
param 1 lst_fn:包含要从系谱中重绘的动物列表的文件,每行一行
参数2 ped fn:输入谱系文件,3列
参数3选项:输出谱系文件,3列
4个GNYMAX:(0)LSTYFN
中每个人的最大递归生成到GRIP参数5中缺少u:('.')输入文件缺少值,默认值为'.'.'.
参数6缺少输出:('.')输出文件缺少值,默认值为'.'.'.
参数7 sep_in:(',')输入文件的分隔符,默认值为','即csv
param 8 sep_out:(',')输出文件的分隔符,默认值为',',即csv
param 9 xref fn:(none)修改输出谱系的交叉引用文件
param 10 flag_r:(false)bool,如果为true,则输出子体id
Example: |
---|
Python
from pedRefiner import PedRefiner
pr = PedRefiner()
# pr.help()
pr.pipeline(‘animal_list’, ‘ped.input.csv’, ‘ped.output.csv’, gen_max=3)
猛击
# 1 2 3 4gen_max 5missin 6missout 7sepin 8sepout 9 10
pedRefiner.py ANM_LST PED_INPUT.csv PED_OUTPUT.csv [3 0 0 , , xref True]
Description: |
---|
提取anmlist文件中所有动物祖先的血统;
如果指定了'-r'选项,则从anmlist文件中打印出所有子代的ID,而不是打印出经过优化的血统;
如果指定了以空格分隔的3列外部参照文件,则使用第1列作为命令,外部参照系谱信息:
# line starting with sharp will be ignored
# cmd = A : [A]ll ID1 (col1, 2 and 3) will be changed to ID2
A ID1 ID2
# cmd = S : All ID1 in the [S]ire (2nd) column will be changed to ID2
S ID1 ID2
# cmd = D : All ID1 in the [D]am (3rd) column will be changed to ID2
D ID1 ID2
如果检测到同一动物的多个条目,则强制接受最新版本;
Updates: |
---|
- 版本2017-02-23在指定rec_gen_max时防止复杂系谱出现意外顺序
- 版本2017-02-22 -修改为非递归版本,以防止非常长的谱系出现分割错误 -仅维护python版本
- 版本2016-03-31添加了-r选项:将从anmlist中递归打印出所有子代的id,一直打印到最后
- 版本2015-07-13增加了输出:pedout.id2根据PED发送,未知为“m”
- 版本2015-07-02添加外部参照以更正动物标识:将第1列替换为第2列
- 版本2015-06-29防止由于系谱循环导致的分割错误11
- 版本2015-06-12添加了更新预加载的空条目
- 版本2015-04-15添加了第三个参数以确定递归生成
- 版本2014-11-10修改了check(),以便在一次运行中检查所有错误added sort()
- 版本2014-04-15初始版本