pandas处理csv
生活随笔
收集整理的這篇文章主要介紹了
pandas处理csv
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
?
import pandas as pd from pandas import Series,DataFrame?
打開csv文件
deli = pd.read_csv('../得力.csv')轉換為DataFrame數據類型
df = DataFrame(data=deli)更改列名
df.rename(columns={"title":"商品名稱","price":"價格","prodCode":"型號","brand":"品牌","cskucode":"商品id","detailDesc":"商品簡介","First_class":"一級分類","Second_class":"二級分類"},inplace=True) df.drop(["_id"],axis=1,inplace=True) df根據列名重新排列
df = df.loc[:,["商品名稱","價格","型號","品牌","商品id","商品簡介","一級分類","二級分類"]]處理列中字符串
df["商品名稱"] = df["商品名稱"].str.strip("\n") df保存DataFrame數據為csv文件
df.to_csv("test得力.csv",encoding="utf_8_sig")?
關于utf-8與utf_8_sig的區別:
UTF-8以字節為編碼單元,它的字節順序在所有系統中都是一様的,沒有字節序的問題,也因此它實際上并不需要BOM(“ByteOrder Mark”)。但是UTF-8 with BOM即utf-8-sig需要提供BOM。
1)程序輸出中出現亂碼的原因是因為python2中中文編碼的問題,需要注意的是要將處理的中文文件的編碼和python源文件的編碼保持一致,這樣不會出現中文亂碼。
2)在程序中能夠正常輸出中文,但是導出到文件后使用excel打開是出現中文亂碼是因為excel能夠正確識別用gb2312、gbk、gb18030或utf_8 with BOM?編碼的中文,如果是utf_8 no BOM編碼的中文文件,excel打開會亂碼。
其他:
判斷列中是否有空值
df.isnull().any(axis=0)DataFrame文檔鏈接 http://pandas.pydata.org/pandas-docs/stable/reference/frame.html
轉載于:https://www.cnblogs.com/JinMuBaoBao/p/10885533.html
總結
以上是生活随笔為你收集整理的pandas处理csv的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果固件下载官网(苹果官方下载固件)
- 下一篇: 【Java】NIO中Selector的s