微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python-修复pandas DataFrame中的索引列

我有一个带有以下数据的Pandas DataFrame(来自Jupyter Notebook的输出)

enter image description here

无论如何,我可以命名第一列吗?我无法访问它,因为它看起来像是行名列.

或者以其他方式提取一个未修饰的列,并使用[‘accessions’]和[‘symbols’]创建一个新的数据框

解决方法:

pd.DataFrame.rename_axis

那是指数…
使用@JesseVogt的样本数据框df

df = pd.DataFrame(
    data={
         'asc': [['XM', 'NM', 'XM'], ['NM', 'XM'], ['NM', 'NM', 'NM'], ['NM']],
         'sym': [{'CP', 'BT', 'MF'}, {'BC', 'CP'}, {'NT', 'IF', 'NT5'}, {'BA'}],
     },
    index=[('A', 'A'), ('A', 'C'), ('A', 'G'), ('A', 'U')]
)

您可以重命名索引,并在显示时使其显示在索引上方

df.rename_axis('MyName')

                 asc            sym
MyName                             
(A, A)  [XM, NM, XM]   {MF, BT, CP}
(A, C)      [NM, XM]       {BC, CP}
(A, G)  [NM, NM, NM]  {NT, IF, NT5}
(A, U)          [NM]           {BA}

或者,您可以重置索引以将该信息正确放置到数据框中

df.rename_axis('MyName').reset_index()

   MyName           asc            sym
0  (A, A)  [XM, NM, XM]   {MF, BT, CP}
1  (A, C)      [NM, XM]       {BC, CP}
2  (A, G)  [NM, NM, NM]  {NT, IF, NT5}
3  (A, U)          [NM]           {BA}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐