python數(shù)據(jù)處理之Pandas類型轉(zhuǎn)換的實現(xiàn)
轉(zhuǎn)換為字符串類型
tips['sex_str'] = tips['sex'].astype(str)
轉(zhuǎn)換為數(shù)值類型
轉(zhuǎn)為數(shù)值類型還可以使用to_numeric()函數(shù)
DataFrame每一列的數(shù)據(jù)類型必須相同,當(dāng)有些數(shù)據(jù)中有缺失,但不是NaN時(如missing,null等),會使整列數(shù)據(jù)變成字符串類型而不是數(shù)值型,這個時候可以使用to_numeric處理
#創(chuàng)造包含'missing'為缺失值的數(shù)據(jù) tips_sub_miss = tips.head(10) tips_sub_miss.loc[[1,3,5,7],'total_bill'] = 'missing' tips_sub_miss
自動轉(zhuǎn)換為了字符串類型:
使用astype轉(zhuǎn)換報錯:
tips_sub_miss['total_bill'].astype(float)
使用to_numeric()函數(shù):
直接使用to_numeric()函數(shù)還是會報錯,添加errors參數(shù)
errors
可變參數(shù):
ignore
遇到錯誤跳過 (只是跳過沒轉(zhuǎn)類型)coerce
遇到不能轉(zhuǎn)的值強轉(zhuǎn)為NaN
pd.to_numeric(tips_sub_miss['total_bill'],errors='ignore')
pd.to_numeric(tips_sub_miss['total_bill'],errors='coerce')
to_numeric向下轉(zhuǎn)型:
downcast
參數(shù)
integer
和signed
最小的有符號int dtypefloat
最小的float dtypeunsigned
最小的無符號int dtype
downcast參數(shù)設(shè)置為float之后, total_bill的數(shù)據(jù)類型由float64變?yōu)閒loat32
pd.to_numeric(tips_sub_miss['total_bill'],errors='coerce',downcast='float')
分類數(shù)據(jù)(Category)
利用pd.Categorical()
創(chuàng)建categorical數(shù)據(jù),Categorical()常用三個參數(shù)
- 參1 values,如果values中的值,不在categories參數(shù)中,會被NaN代替
- 參2 categories,指定可能存在的類別數(shù)據(jù)
- 參3 ordered, 是否指定順序
s = pd.Series(pd.Categorical(["a","b","c","d"],categories=['c','b','a']))
分類數(shù)據(jù)排序會自動根據(jù)分類排序:
ordered指定順序:
from pandas.api.types import CategoricalDtype # 創(chuàng)建一個分類 ordered 指定順序 cat = CategoricalDtype(categories=['B','D','A','C'],ordered=True) # 指定series_cat1轉(zhuǎn)換類型為創(chuàng)建的分類類型 series_cat1 = series_cat.astype(cat) print(series_cat.sort_values()) print(series_cat1.sort_values())
數(shù)據(jù)類型小結(jié)
知識點 | 內(nèi)容 |
---|---|
Numpy的特點 | 1. Numpy是一個高效科學(xué)計算庫,Pandas的數(shù)據(jù)計算功能是對Numpy的封裝 2. ndarray是Numpy的基本數(shù)據(jù)結(jié)構(gòu),Pandas的Series和DataFrame好多函數(shù)和屬性都與ndarray一樣 3. Numpy的計算效率比原生Python效率高很多,并且支持并行計算 |
Pandas數(shù)據(jù)類型轉(zhuǎn)換 | 1. Pandas除了數(shù)值型的int 和 float類型外,還有object ,category,bool,datetime類型 2. 可以通過as_type 和 to_numeric 函數(shù)進行數(shù)據(jù)類型轉(zhuǎn)換 |
Pandas 分類數(shù)據(jù)類型 | 1. category類型,可以用來進行排序,并且可以自定義排序順序 2. CategoricalDtype可以用來定義順序 |
到此這篇關(guān)于python數(shù)據(jù)處理之Pandas類型轉(zhuǎn)換的實現(xiàn)的文章就介紹到這了,更多相關(guān)-Pandas類型轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python輸入、數(shù)據(jù)類型轉(zhuǎn)換及運算符方式
- Python數(shù)據(jù)類型轉(zhuǎn)換匯總
- Python數(shù)據(jù)類型轉(zhuǎn)換詳解
- Python如何實現(xiàn)強制數(shù)據(jù)類型轉(zhuǎn)換
- python3的數(shù)據(jù)類型及數(shù)據(jù)類型轉(zhuǎn)換實例詳解
- Python常見數(shù)據(jù)類型轉(zhuǎn)換操作示例
- 淺談python數(shù)據(jù)類型及類型轉(zhuǎn)換
- 常用python數(shù)據(jù)類型轉(zhuǎn)換函數(shù)總結(jié)
- Python數(shù)據(jù)類型轉(zhuǎn)換實現(xiàn)方法
相關(guān)文章
Python+OpenCV實現(xiàn)相機標(biāo)定的方法詳解
opencv中內(nèi)置了張正友的棋盤格標(biāo)定法,通過一些姿態(tài)各異的棋盤格圖像,可以標(biāo)定相機的內(nèi)外參數(shù),本文為大家介紹OpenCV進行相機標(biāo)定的具體方法,希望對大家有所幫助2023-05-05python目標(biāo)檢測SSD算法預(yù)測部分源碼詳解
這篇文章主要為大家介紹了python目標(biāo)檢測SSD算法預(yù)測部分源碼詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05Python實現(xiàn)的飛速中文網(wǎng)小說下載腳本
這篇文章主要介紹了Python實現(xiàn)的飛速中文網(wǎng)小說下載腳本,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下2015-04-04python mysql 字段與關(guān)鍵字沖突的解決方式
這篇文章主要介紹了python mysql 字段與關(guān)鍵字沖突的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python EOL while scanning string literal問題解決方法
這篇文章主要介紹了Python EOL while scanning string literal問題解決方法,本文總結(jié)出是數(shù)據(jù)庫數(shù)據(jù)出現(xiàn)問題導(dǎo)致這個問題,需要的朋友可以參考下2015-04-04