如何解决Linux上的“元数据错误:chr必须有效”错误?

时间:2018-09-20 19:07:33

标签: perl bioinformatics

我在编码领域还比较陌生,因此在运行TranslocWrapper.pl tutorial_metadata.txt preprocess/ results/ --threads 2时无法解决问题。我正在尝试根据此GitHub project运行HTGTS管道。这是完整的错误:

.   Library Genome  Chr Start   End Strand
1   RAG1A_SRep2 hg19    chr11   36594878    36595030    -
Metadata error: chr must be valid at /home/micah/transloc_pipeline/bin/TranslocWrapper.pl line 285.
    main::check_validity_of_metadata('HASH(0x2903ac8)') called at /home/micah/transloc_pipeline/bin/TranslocWrapper.pl line 248
    main::read_in_meta_file() called at /home/micah/transloc_pipeline/bin/TranslocWrapper.pl line 90

我已经仔细检查了软件依赖关系的成功安装,因此一切都应该很好,但是我在解释“元数据错误:chr必须在...处有效”时遇到了麻烦。如果有帮助,这些是错误中正在调用的特定行:

  • TranslocWrapper.pl第285行:

    croak "Metadata error: chr must be valid" unless grep { $_ eq $expt->{chr} } @chrlist;
    
  • TranslocWrapper.pl第248行:

    check_validity_of_metadata($expt);
    
  • TranslocWrapper.pl第90行:

    read_in_meta_file;
    

预先感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

所以错误是说在序列的汇编文件中不存在元数据文件中的序列字符之一。

鉴于这是所提供的示例,因此您应该假设数据正确且调用错误。

您完成了TranslocPreprocess.pl预处理步骤吗?

如果尝试查看元数据文件的第一行,请标识程序集条目。确保程序集文件存在并且包含所需的顺序。

这种代码的一个常见问题是文件名的情况。这些示例旨在在文件名区分大小写的Linux中运行。 Windows喜欢假装这种情况无关紧要,这可能会引起问题。如果您是从Microsoft Windows运行此代码或从Windows内部提取了任何存档,则可能是该错误的原因。