1

我想在 plink 中按家庭 ID 拆分我的 bed、bim 和 fam 文件。例如,我可以通过键入以下染色体来执行此操作:

p-link --bfile datafile1 --chr 1 --make-bed --out datafile2

这样就为 1 号染色体创建了一个单独的 bed、bim 和 fam 文件。

但是,在我的 fam 文件中,我有几个不同的家庭 ID,我想以此来分割文件。例如

Family 1 TS11339 0 0 2 -9
Family 1 TS11233 0 0 2 -9
Family 2 TF99288 0 0 2 -9
Family 2 YJ22997 0 0 2 -9
Family 3 YF00277 0 0 2 -9
Family 3 YY92779 0 0 2 -9

我想要 Family1.bed -.bim 和 -.bam,Family2.bed -.bim 和 -.bam 等。

我怎样才能做到这一点?(抱歉知识贫乏 - 刚开始使用 plink)。

4

3 回答 3

2

以下命令应在 UNIX shell 上拆分 plink 数据集:

for fam in $(awk '{print $1}' datafile1.fam | sort | uniq); do echo $fam | plink --bfile datafile1 --keep-fam /dev/stdin --make-bed --out $fam; done
于 2015-04-06T21:17:24.773 回答
1

更简单一点: plink --keep-fam

于 2014-01-28T14:58:58.277 回答
0

我想通了,您可以通过 plink 进行如下操作:

p-link --bfile datafile1 --keep LIST1.txt --make-bed --out

其中 LIST1.txt 是家庭 ID 和个人的列表。所以说如果你想提取家庭 1,LIST1.txt 将包括:

家庭 1 TS11339

家庭 1 TS11233

更多信息可以在 plink 网站上找到。

于 2013-10-22T16:18:09.540 回答