簡體   English   中英

如何對 dataframe 和 python 中具有不同字符(.、,、@、$、(、&)的列名進行排序

[英]How to sort column names with different characters(., !, @, $, (, &) in a dataframe with python

我要排序的dataframe有5000多列的名稱,包括字符、標點符號、數字、圓點、括號等。 所有這些列都重復 4 次。 重復列的值相同。 header 名稱的子集如下所示:

    ['I','single', 'game', 'I.1', 'Cliff', ',', 'on', 'me', 'RT', '@USER', ':', 'Texas', '(', 
     'cont', ')', 'URL', 'RT.1', '@USER.1', ':.1', '4', 'the', 'lingerie', 'party', '?????', 
     'Wednesday', 'ã\x80\x8bhave', 'a.1', 'nice', 'day', ':)', 'RT.2', '@USER.2']

首先,我需要從所有名稱中刪除 integer 后綴,例如“I.1”應該是“I”,同樣,所有列名稱中的所有其他后綴。

其次,所有的列都以相同的順序重復四次。 我需要按照以下順序對它們進行排序:

      ['I', 'I','I','I','single','single''single''single','game', 'game','game','game','I',  
       'I','I','I','.', 'Cliff', 'Cliff','Cliff','Cliff',','','','',', 'on','on','on','on',  
       .... and so on]

這里的“I's”與“single”和“game”應該放在一起,而不是其他“I's”。 sort_index() 和 reset_index() 等函數給出了排序順序,但不是我需要的。

任何幫助。

我嘗試了不同的方法,但由於字符作為名稱的奇怪性質和一長串具有特定格式要求的列,我找不到合適的解決方案。

我找到並為我工作的解決方案是,首先我轉置 dataframe。然后我創建一個單獨的索引列,其中包含數字,並使用該索引以我重新獲取的格式對 dataframe 進行排序。 雖然它可能不是完美的解決方案,但通過這樣做,我可以輕松地對其進行進一步的處理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM