婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 使用Python pandas讀取CSV文件應該注意什么?

使用Python pandas讀取CSV文件應該注意什么?

熱門標簽:梅州外呼業務系統 北京電信外呼系統靠譜嗎 高德地圖標注是免費的嗎 老人電話機器人 百度地圖標注位置怎么修改 洪澤縣地圖標注 地圖標注視頻廣告 無錫客服外呼系統一般多少錢 大連crm外呼系統

示例文件

將以下內容保存為文件 people.csv

id,姓名,性別,出生日期,出生地,職業,愛好
1,張小三,m,1992-10-03,北京,工程師,足球
2,李云義,m,1995-02-12,上海,程序員,讀書 下棋
3,周娟,女,1998-03-25,合肥,護士,音樂,跑步
4,趙盈盈,Female,2001-6-32,,學生,畫畫
5,鄭強強,男,1991-03-05,南京(nanjing),律師,歷史-政治

如果一切正常的話,在Jupyter Notebook 中應該顯示以下內容:

文件編碼

文件編碼格式是最容易出錯的問題之一。如果編碼格式不正確,就會完全讀取不出文件內容,出現類似于以下的錯誤, 讓人完全不知所措:

---------------------------------------------------------------------------
UnicodeDecodeError                        Traceback (most recent call last)
ipython-input-6-8659adefcfa6> in module>
----> 1 pd.read_csv('people.csv', encoding='gb2312')

C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\parsers.py in parser_f(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, cache_dates, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, dialect, error_bad_lines, warn_bad_lines, delim_whitespace, low_memory, memory_map, float_precision)
    683         )
    684 
--> 685         return _read(filepath_or_buffer, kwds)
    686 
    687     parser_f.__name__ = name

C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\parsers.py in _read(filepath_or_buffer, kwds)
    455 
    456     # Create the parser.
--> 457     parser = TextFileReader(fp_or_buf, **kwds)
    458 
    459     if chunksize or iterator:

C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, f, engine, **kwds)
    893             self.options["has_index_names"] = kwds["has_index_names"]
    894 
--> 895         self._make_engine(self.engine)
    896 
    897     def close(self):

C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
   1133     def _make_engine(self, engine="c"):
   1134         if engine == "c":
-> 1135             self._engine = CParserWrapper(self.f, **self.options)
   1136         else:
   1137             if engine == "python":

C:\ProgramData\Anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, src, **kwds)
   1915         kwds["usecols"] = self.usecols
   1916 
-> 1917         self._reader = parsers.TextReader(src, **kwds)
   1918         self.unnamed_cols = self._reader.unnamed_cols
   1919 

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader.__cinit__()

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._get_header()

UnicodeDecodeError: 'gb2312' codec can't decode byte 0x93 in position 2: illegal multibyte sequence

目前對于中文而言,最常使用的有 utf-8gb2312 兩種格式,只需要指定正確的編碼。在不知道編碼的情況下,只需要嘗試兩次即可。padas默認的文件編碼格式是 utf-8,所以如果出現以上錯誤,只需使用 encoding=gb2312 再嘗試一下即可,如 pd.read_csv(file, encoding='gb2312')

空值

空值是csv中也非常常見,比如以下內容:

import pandas as pd
df = pd.read_csv('people.csv')
v1=df['出生地'][3]
print(v1, type(v1))

輸出為:

nan class 'float'>

由此可見,空值也是有數據類型的,為 float 類型。

如何判斷空值有兩種方法,可以使用 math.isnan(x) 也可以使用 isinstance(float)。我們知道,DateFrame對象是包括Series對象,而在一個Series對象中,所有的數據類型默認是一樣的,所以如果其數據類型推斷為字符串(str),那么直接使用 math.isnan(x) 則會報錯 TypeError: must be real number, not str 錯誤,即必需為實數,不能是字符串。所以,這時我們還需要使用 isinstance(x, flaot) 方法。
具體請看這個示例:

df.出生地=df.出生地.map(lambda x: '其他' if isinstance(x, float) else x)
df

函數映射

方法1:直接使用labmda表達式

需要對數據列進行復雜操作的時候,我們可以使用以下函數時行相應的操作。

df=df.fillna('未知')
df.愛好=df.愛好.map(lambda x: x.split(' ')[0].split('-')[0].split(',')[0])
df

方法二:使用自定義函數

在進行映射時,如果操作比較簡單,可以使用字典的方式進行數值映射映射(參見下文)。但是如果操作比較復雜,則需要使用函數進行映射。請看這個示例,讀取到性別時,內容有 ‘m', ‘M', ‘Female' 等內容,現在需要其全部轉換為

def set_sex(s):
    if s.lower() == 'm' or s.lower() == 'male':
        return '男'
    elif s.lower() == 'female':
        return '女'        
    return s

df = pd.read_csv('people.csv', converters={'性別': lambda x : set_sex(x)})
df

方法三:使用數值字典映射

在數據處理時,數值型往往比字符串效率更高,所以在可能的情況下,我們希望將數據轉換成字符串處理。請看這個示例,將輸入的數據的性別中的男性轉換為1 女性轉換為0。操作如下:

到此這篇關于使用Python pandas讀取CSV文件應該注意什么?的文章就介紹到這了,更多相關pandas讀取CSV文件內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python Pandas分組聚合的實現方法
  • python中pandas對多列進行分組統計的實現
  • 詳解python pandas 分組統計的方法
  • Python Pandas實現數據分組求平均值并填充nan的示例
  • Python學習筆記之pandas索引列、過濾、分組、求和功能示例
  • Python Pandas的簡單使用教程
  • Python pandas入門系列之眾數和分位數
  • Python pandas求方差和標準差的方法實例
  • python geopandas讀取、創建shapefile文件的方法
  • 利用python Pandas實現批量拆分Excel與合并Excel
  • python pandas分組聚合詳細

標簽:安慶 洛陽 泉州 怒江 清遠 長春 岳陽 吉林

巨人網絡通訊聲明:本文標題《使用Python pandas讀取CSV文件應該注意什么?》,本文關鍵詞  使用,Python,pandas,讀取,CSV,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《使用Python pandas讀取CSV文件應該注意什么?》相關的同類信息!
  • 本頁收集關于使用Python pandas讀取CSV文件應該注意什么?的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久99精品久久久久久久久久久久| 777奇米成人网| 亚洲精选一二三| 亚洲国产精品久久人人爱| 成人精品鲁一区一区二区| 久久毛片高清国产| 亚洲3atv精品一区二区三区| 精品一区二区三区免费播放 | 国产精品无码永久免费888| 午夜精品一区二区三区三上悠亚 | 一区二区三区不卡视频在线观看| 国产精品资源在线看| 中文字幕乱码一区二区免费| 国产成人精品网址| 中日韩免费视频中文字幕| 精品一区二区免费在线观看| 国产精品情趣视频| 韩国成人福利片在线播放| 久久女同精品一区二区| 国产精品白丝jk黑袜喷水| 亚洲欧美另类综合偷拍| 91精品久久久久久久91蜜桃| 国内精品免费在线观看| 国产精品国产三级国产aⅴ入口 | 91麻豆国产福利精品| 亚洲男人的天堂一区二区| 欧美视频完全免费看| 精品一区二区三区久久久| 最新欧美精品一区二区三区| 91精品国产入口| 国产超碰在线一区| 午夜激情综合网| 亚洲国产成人私人影院tom| 欧美性受xxxx黑人xyx| 国产白丝网站精品污在线入口| 亚洲一区在线观看视频| 精品第一国产综合精品aⅴ| 豆国产96在线|亚洲| 亚洲另类在线视频| 欧美精品一区二区三区视频| 99久久精品国产网站| 三级成人在线视频| 玉足女爽爽91| 久久久久国产精品麻豆ai换脸| 97aⅴ精品视频一二三区| 亚洲h动漫在线| 久久久久久久久97黄色工厂| 色综合一区二区三区| 午夜成人在线视频| 91网上在线视频| 粉嫩13p一区二区三区| 亚洲另类一区二区| 91精品国产91久久综合桃花 | 国产精品电影一区二区三区| 久久 天天综合| 日韩成人免费电影| 日韩片之四级片| 欧美欧美欧美欧美首页| 亚洲 欧美综合在线网络| 日本不卡视频在线| 午夜精品影院在线观看| 欧美一级高清片| 欧美福利视频导航| 天天操天天干天天综合网| 亚洲色图在线播放| 91国在线观看| 欧美天堂亚洲电影院在线播放| 亚洲综合在线观看视频| 一卡二卡欧美日韩| 欧美久久久一区| 日韩视频免费观看高清完整版在线观看 | 中文字幕亚洲成人| 欧美福利一区二区| 国产精品久久久久桃色tv| 中文字幕乱码亚洲精品一区| 91捆绑美女网站| 欧美日韩在线直播| 国产中文字幕一区| 不卡的电影网站| 亚洲福中文字幕伊人影院| 日韩av电影免费观看高清完整版在线观看| 欧美猛男超大videosgay| 欧美不卡一区二区三区| eeuss鲁一区二区三区| 欧洲视频一区二区| 激情小说欧美图片| 99re这里都是精品| 亚洲摸摸操操av| 一区二区三区影院| 午夜亚洲福利老司机| 激情欧美一区二区| 一区二区三区蜜桃网| 美女mm1313爽爽久久久蜜臀| 国产精品丝袜91| 首页欧美精品中文字幕| 亚洲欧洲日本在线| 乱一区二区av| 亚洲国产一二三| 成人欧美一区二区三区视频网页| 岛国一区二区在线观看| 亚洲宅男天堂在线观看无病毒| 成人丝袜18视频在线观看| 色呦呦国产精品| 国产喷白浆一区二区三区| 日本一区二区三区在线观看| 色婷婷av一区二区三区大白胸| 欧美日韩精品高清| 日韩欧美一区二区久久婷婷| 国产欧美一区二区三区在线老狼| 国产欧美中文在线| 色吊一区二区三区| 日韩亚洲欧美高清| 91视频国产观看| 久久久精品免费网站| 666欧美在线视频| 日韩一二在线观看| aaa欧美日韩| 欧美午夜精品久久久久久超碰| 国产一区 二区| 欧美人动与zoxxxx乱| 成人av在线观| 亚洲大片在线观看| 日韩一级黄色片| 亚洲激情图片小说视频| 亚洲精品一区二区三区福利| 亚洲国产精品综合小说图片区| 亚洲欧美色综合| 理论电影国产精品| 天堂蜜桃一区二区三区| 成人永久aaa| 无吗不卡中文字幕| 97精品国产97久久久久久久久久久久 | 亚洲男人都懂的| 国产成人免费av在线| 蜜臀av一区二区在线观看| 成人综合婷婷国产精品久久 | 夜夜操天天操亚洲| 狠狠久久亚洲欧美| 洋洋av久久久久久久一区| 久久黄色级2电影| 亚洲福利一区二区| 91极品美女在线| 777午夜精品免费视频| 亚洲免费大片在线观看| 国产精品你懂的在线欣赏| 国产一区二区三区在线观看免费 | 国产精品一区二区果冻传媒| 免费人成网站在线观看欧美高清| 欧美日韩国产中文| 综合激情网...| 亚洲日本一区二区三区| 国产·精品毛片| 国产盗摄一区二区| 国产精品视频你懂的| 国产精品成人免费在线| 91碰在线视频| 欧美视频三区在线播放| 一区二区在线观看免费| 亚洲美女视频一区| 91亚洲精品一区二区乱码| 91在线视频18| 亚洲黄色免费电影| 午夜久久久久久电影| 欧美一级欧美三级在线观看| 日韩欧美国产三级电影视频| 美腿丝袜在线亚洲一区| 美女视频一区二区| 国产精品视频线看| 一区二区三区不卡视频| 欧美精品欧美精品系列| 2019国产精品| 菠萝蜜视频在线观看一区| 欧美亚洲一区三区| 免费成人av资源网| 成人免费观看av| 亚洲欧美aⅴ...| 日本午夜一本久久久综合| 精品国产91乱码一区二区三区| 久久久久久久久岛国免费| 色综合天天视频在线观看| 制服丝袜av成人在线看| 懂色av噜噜一区二区三区av| 91原创在线视频| 日本伊人色综合网| 精品一区二区三区在线播放视频| 国产精品全国免费观看高清| 秋霞影院一区二区| 国产午夜精品一区二区| 亚洲国产毛片aaaaa无费看 | 日韩精品电影在线| 青青国产91久久久久久| 久久久美女艺术照精彩视频福利播放| 精品免费一区二区三区| 亚洲视频狠狠干| 中文字幕一区二区三区在线观看 | 欧美午夜电影网| 亚洲欧洲精品天堂一级 | jlzzjlzz欧美大全| 国产一区二区三区电影在线观看| 在线国产电影不卡|