【发布时间】:2012-10-02 18:22:33
【问题描述】:
我在 R 中有一个大型数据框(570 行 x 200000 列)。对于那些熟悉 PLINK 的人,我正在尝试为 GWAS 分析创建一个 PED 文件。 Plink 要求每个缺失的字符用零编码。非缺失值为“A”、“T”、“C”或“G”。
因此,例如,数据结构在数据框中看起来像这样。
COL1 COL2
PT1 A T
PT2 T T
PT3 A A
PT4 A T
PT5 0 0
PT6 A A
PT7 T A
PTn T T
当我在 Plink 中运行我的文件时,我得到一个错误。我回去检查我在 R 中的文件,发现零是“字符”类型。 R 中的给定列中是否可以有两种不同的数据类型(数字和字符)?我尝试将 0 设为数字类型并将字母保持为字符类型,但它不会不工作。
【问题讨论】:
-
当您导出文件时,您可能可以使用
quote=FALSE并获得您正在寻找的行为。 -
假设 PT1..n 表示家庭 id,COL1 和 COL2 指的是 n 名患者中一个 snp 的基因型,我提出这些问题。您是否删除了文件中的标题行:COL1 和 COL2? PLINK 在创建 PED 文件时不喜欢标题。当您执行 assoc 程序时是否在 plink 中出现错误,或者当您尝试将问题中的列与个人 ID、父亲 ID、母亲 ID、性别和表型组合时出现错误。 ped 文件需要这些附加参数。
-
嗨 Sathish - 是的,我删除了标题行,并且在添加基因型之前还包括了家庭 ID、个人 ID、父亲 ID、母亲 ID、性别和表型。我只是展示了基因型(第 7 列及以后的列)应该是什么样子的示例。当我尝试使用以下命令创建二进制 PED 文件时出现错误:plink --file data --make-bed --out data。错误是:错误:基因座“rs1003076”具有>2个等位基因:个体6 2具有基因型[“A”“G”]但我们已经看到[“0”]和[“A”]