我有两个 Numpy 数组,我需要将它们组合起来,只维护某些列的A
大小(888, 1114253)
,具体取决于我拥有的行B
大小(555861, 3)
。
问题是标题A
是55730
:每列有两个值!
换句话说,我只想获取A
标题与 中的行相对应的列B
,但在A
每一列中都是“双”
一个例子将阐明:
A
:
family id mum dad rs1 rs2 rs3 rs4 rs5 rs6 rs7 rs8 rs9 rs10 rs11 rs12
1 1 4 6 A T A A T T C C G G A T A G A A G A T A G G C C
2 2 7 9 T A G A C T C T G A T T A A A C G G T A C C C T
3 3 2 8 T T G G C T C T G G A T A G A C G G T T C C C C
4 4 5 1 A A A A T T C C G A T T A A A A G A T A G C C T
由于在这个文件中每个rsxxx
列标题都有两个对应的列,我必须找到一种方法将它们放在一起,所以我可以将文件作为数组读取
B
:
1 rs1 2345
1 rs2 2346
2 rs5 2348
4 rs8 2351
4 rs12 2360
所需的输出是
Output
:
family id mum dad rs1 rs2 rs5 rs8 rs12
1 1 4 6 A T A A G G A A C C
2 2 7 9 T A G A G A A C C T
3 3 2 8 T T G G G G A C C C
4 4 5 1 A A A A G A A A C T
想法?
在控制台上
B
:
array([['1', 'rs3094315', '752566'],
['1', 'rs12562034', '768448'],
['1', 'rs3934834', '1005806'],
...,
['23', 'rs2032612', '21866491'],
['23', 'rs2032621', '21872738'],
['23', 'rs2032617', '21896261']],
dtype='<S10')