pandas pd.Categorical()方法詳解【轉】


今天遇到pd.Categorical()這個方法,說實話以前自己沒遇到過!現在把自己的理解清晰的給正在疑惑的小伙伴說明一下!

直接上代碼

1.定義一個列表,注意里面有重復元素!

#定義一個列表,注意里面有重復元素!
str = ['a','a','b','c','c','e','h','g'] str 
 
image.png

2.導如pandas包,並調用Categorical方法

# 導如pandas包,並調用Categorical方法 import pandas as pd ss = pd.Categorical(str) 
 
image.png

打印ss之后我們發現 Categories (6, object): [a, b, c, e, g, h]把我們的重復值去掉了,原來有8個現在才有六個,那么其余的是不是不在了呢?答案是:其余還在,只不過使用了另外一個表示方式!

ss.dtype

查看一下它到底誰是什么類型

 
image.png

調用ss的兩個重要屬性!

 
image.png

通過對比,細心的你,應該發現,原來的字母現在已經被數字所代替,而且用的是從0開始的索引,所以a對應0遇到重復的a同樣用0表示,這樣就可以把非數值的轉換成數值的,方便計算!我覺得這就是這個方法的最大好處!

至於categories屬性,可以看到原來的字母的去重后的情況!用處不大,主要還是codes比較實用!

這里只是為了說明,舉了一個簡單的列表說明,在pandas里面的話,這個方法的用處會更大一些,大家可以去試試!

 
 
 
 



作者:采星星的小太陽BavaLI
鏈接:https://www.jianshu.com/p/e276848b9115
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM