Pandas Dataframe:将多列拆分为两列 [英] Pandas Dataframe: Split multiple columns each into two columns
本文介绍了Pandas Dataframe:将多列拆分为两列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个名为 df 的 Pandas 数据框,如下所示:
I have a pandas dataframe named df like this:
0 2J-AAB1 AA AA CC CC AA AA CC AA CC
1 2J-AAB4 AA TA TC TC GA AA CC AA CC
2 2J-AAB6 AA TA CC CC AA AA CC AA CC
3 2J-AAB8 AA TT TT TT GG AA TC CC CC
4 2J-AAB9 AA TT TT TT GG AA TC CC CC
5 2J-AABA AA AA CC CC GA AG CC AA CG
6 2J-AABE AA TT TT TT GG AA TC CA CC
7 2J-AABF AA AA CC CC AA AA CC AA CC
8 2J-AABH AA TT TT TT GG AA CC AA CC
9 2J-AABI AA AA CC CC AA AA CC AA CG
我想将AA、AT、CC"等列全部拆分为两列并获得新的数据框,例如:
I want to split columns like "AA,AT,CC" etc all into two columns and get new data-frame like:
0 2J-AAB1 A A A A C C C C A A A A C C A A C C
1 2J-AAB4 A A T A T C T C G A A A C C A A C C
2 2J-AAB6 A A T A C C C C A A A A C C A A C C
3 2J-AAB8 A A T T T T T T G G A A T C C C C C
4 2J-AAB9 A A T T T T T T G G A A T C C C C C
5 2J-AABA A A A A C C C C G A A G C C A A C G
6 2J-AABE A A T T T T T T G G A A T C C A C C
7 2J-AABF A A A A C C C C A A A A C C A A C C
8 2J-AABH A A T T T T T T G G A A C C A A C C
9 2J-AABI A A A A C C C C A A A A C C A A C G
有pythonic的方法吗?任何建议表示赞赏.. 提前致谢
Is there a pythonic way to make it? Any suggestion are appreciated .. Thanks in advance
推荐答案
试试这个:
In [60]: x = df.set_index(1).stack().str.extractall('(.)').unstack([-2, -1]).reset_index()
In [61]: x.columns = np.arange(len(x.columns))
In [62]: x
Out[62]:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
0 2J-AAB1 A A A A C C C C A A A A C C A A C C
1 2J-AAB4 A A T A T C T C G A A A C C A A C C
2 2J-AAB6 A A T A C C C C A A A A C C A A C C
3 2J-AAB8 A A T T T T T T G G A A T C C C C C
4 2J-AAB9 A A T T T T T T G G A A T C C C C C
5 2J-AABA A A A A C C C C G A A G C C A A C G
6 2J-AABE A A T T T T T T G G A A T C C A C C
7 2J-AABF A A A A C C C C A A A A C C A A C C
8 2J-AABH A A T T T T T T G G A A C C A A C C
9 2J-AABI A A A A C C C C A A A A C C A A C G
这篇关于Pandas Dataframe:将多列拆分为两列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文