pandas如何解決excel科學計數(shù)法問題
pandas解決excel科學計數(shù)法問題
excel默認處理超14位的數(shù)字成科學計數(shù)法,且后面的數(shù)字默認變0。
使用pandas合表或者生成新表時這是最惡心的問題。
親測兩個方法有效
1、若數(shù)據(jù)量不大,可將to_excel替換成to_csv,csv的包容性還是極強的,但當數(shù)據(jù)量龐大時,會遇到打不開的情況。
2、萬能解法,read_excel時:
df = pd.read_excel("filepath", dtype=str)
一律str型,就不存在數(shù)字不數(shù)字的情況了。
但要注意:
df = df.infer_objects() """ """ df.to_excel("filepath", index=False, encoding="utf-8")
pandas替換科學計數(shù)法數(shù)字
用Pandas讀取數(shù)據(jù)時發(fā)現(xiàn)工單編號、電話號碼等變成科學計數(shù)法記錄。通過觀察當電話號碼類型是float時采用科學計數(shù)法,而int不會。將電話號碼轉(zhuǎn)化成int類型(在Excel里電話號碼轉(zhuǎn)化成字符串類型也沒有解決問題)
首先要將空值轉(zhuǎn)化成數(shù)值,這里我轉(zhuǎn)化成了-1(這里我把data所有字段都填了-1)
data = data.fillna(-1)
將電話號碼字段轉(zhuǎn)化成int類型(我把所有需要int類型的數(shù)字轉(zhuǎn)化了。注意:含有空值會報不能將NA轉(zhuǎn)化成Integer的錯誤)
data[['聯(lián)系電話','關(guān)聯(lián)工單','處理人員','處理滿意度']].astype('int64')
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python 中Django驗證碼功能的實現(xiàn)代碼
驗證碼是一種區(qū)分用戶是計算機還是人的公共全自動程序,很多用戶登錄和注冊系統(tǒng)都提供了圖形驗證碼功能。這篇文章主要介紹了Python 中Django驗證碼功能的實現(xiàn)代碼,需要的朋友可以參考下2019-06-06Python 實現(xiàn) WebSocket 通信的過程詳解
WebSocket是一種在Web應用程序中實現(xiàn)雙向通信的協(xié)議,與傳統(tǒng)的HTTP請求-響應模型不同,WebSocket允許服務器主動向客戶端推送數(shù)據(jù),實現(xiàn)實時性和互動性,這篇文章主要介紹了Python 實現(xiàn) WebSocket 通信的過程詳解,需要的朋友可以參考下2024-06-06python3.9實現(xiàn)pyinstaller打包python文件成exe
這篇文章主要介紹了python3.9實現(xiàn)pyinstaller打包python文件成exe,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12Python實現(xiàn)求兩個數(shù)組交集的方法示例
這篇文章主要介紹了Python實現(xiàn)求兩個數(shù)組交集的方法,涉及Python數(shù)組遍歷、排序、判斷、追加等相關(guān)操作技巧,需要的朋友可以參考下2019-02-02