解決pandas使用read_csv()讀取文件遇到的問題
更新時間:2018年06月15日 08:40:36 作者:Zhang_Zhi_Qiang_1
今天小編就為大家分享一篇解決pandas使用read_csv()讀取文件遇到的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
如下:
數據文件: 上海機場 (sh600009) |
24.11 | 3.58 |
東風汽車 (sh600006) | 74.25 | 1.74 |
中國國貿 (sh600007) | 26.38 | 2.66 |
包鋼股份 (sh600010) | 61.01 | 2.35 |
武鋼股份 (sh600005) | 75.85 | 1.3 |
浦發(fā)銀行 (sh600000) | 6.65 | 0.96 |
在使用read_csv() API讀取CSV文件時求取某一列數據比較大小時,
df=pd.read_csv(output_file,encoding='gb2312',names=['a','b','c']) df.b>20
報錯
TypeError:'>'not supported between instances of 'str' and 'int'
從返回的錯誤信息可知應該是數據類型錯誤,讀回來的是‘str'
in : df.dtypes out: a object b object c object dtype: object
由此可知 df.b 類型是 object
查閱read_csv()文檔 配置:
dtype : Type name or dict of column -> type, default None Data type for data or columns. E.g. {'a': np.float64, 'b': np.int32} (unsupported with engine='python'). Use str or object to preserve and not interpret dtype. New in version 0.20.0: support for the Python parser.
可知默認使用‘str'或‘object'保存
因此在讀取時只需要修改 'dtype' 配置就可以
df=pd.read_csv(output_file,encoding='gb2312',names=['a','b','c'],dtype={'b':np.folat64})
以上這篇解決pandas使用read_csv()讀取文件遇到的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關文章
Pytest單元測試框架生成HTML測試報告及優(yōu)化的步驟
本文主要介紹了Pytest單元測試框架生成HTML測試報告及優(yōu)化的步驟,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01Python利用pdfplumber提取PDF文檔中的表格數據并導出
pdfplumber是一個功能強大的Python庫,可以用于解析PDF文檔并提取其中的文本、表格和圖像等內容,下面我們就來學習一下如何使用pdfplumber提取PDF表格數據吧2023-12-12