色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

pandas讀取csv文件有什么方法和注意點?

8nfr_ZTEdevelop ? 來源:未知 ? 作者:易水寒 ? 2018-07-21 10:00 ? 次閱讀

這篇文章介紹了利用數據分析工具pandas讀取csv文件的方法和注意點,便于迅速過渡到數據處理階段。

pandas是一個高效的數據分析工具?;谄涓叨瘸橄蟮臄祿Y構DataFrame,幾乎可以對數據進行任何你想要的操作。

由于現實世界中數據源的格式非常多,pandas也支持了不同數據格式的導入方法,本文介紹pandas如何從csv文件中導入數據。

從上圖可以看出,我們要做的工作就是把存儲在csv格式中的數據讀入并轉換成DataFrame格式。pandas提供了一個非常簡單的api函數來實現這個功能:read_csv()。

1. 通過read_csv接口讀入csv文件中的數據

下面是一個簡單的示例:

import pandas as pd

CSV_FILE_PATH ='./test.csv'

df = pd.read_csv(CSV_FILE_PATH)

print(df.head(5))

只要簡單地指定csv文件的路徑,便可以得到DataFrame格式的數據df。對于理想情況下的數據,導入過程就是這么簡單!

下面考慮這種情況:假設csv文件頭部有幾個無效行,那么打印出來的結果可能如下所示:

1 2 3 4

0 datetime host hit volume

12018-07-2409:00:00 weibo.com 20 1020

22018-07-2509:00:00 qq.com no20 1028

32018-07-2619:00:00 sina.com 25 1181

42018-07-2721:00:00 sohu.com 15 4582

pandas把【1,2,3,4】這組無效數據當作了column name;而實際上,我們更偏向于將【datetime,host,hit,volume】這組數據當作column name。對于這種情況,read_csv()函數提供了一個參數:skiprows,用于指定跳過csv文件的頭部的前幾行。在這里,我們跳過1行即可。

import pandas as pd

CSV_FILE_PATH ='./test.csv'

df = pd.read_csv(CSV_FILE_PATH, skiprows=1)

print(df.head(5))

得到的結果如下所示:

datetime host hit volume

02018-07-2409:00:00 weibo.com 20 1020

12018-07-2509:00:00 qq.com no20 1028

22018-07-2619:00:00 sina.com 25 1181

32018-07-2721:00:00 sohu.com 15 4582

2. 處理csv文件中的無效數據

pandas可以自動推斷每個column的數據類型,以方便后續對數據的處理。還以上文中的數據為例,通過如下代碼:

import pandas as pd

CSV_FILE_PATH ='./test.csv'

df = pd.read_csv(CSV_FILE_PATH)

print(df.head(5))

print('datatype of column hit is: '+ str(df['hit'].dtypes))

得出的結果:

datetime host hit volume

02018-07-2409:00:00 weibo.com 20 1020

12018-07-2509:00:00 qq.com 20 1028

22018-07-2619:00:00 sina.com 25 1181

32018-07-2721:00:00 sohu.com 15 4582

datatype of column hit is: int64

pandas將hit這一列的數據類型判定為了int64,這顯然方便未來我們對于該列數據的運算。但是在實際情況中,我們經常會面臨數據缺失的問題,如果出現這種情況,我們往往會用一些占位符來表達。假設,我們用missing這個占位符來表示數據缺失,仍使用上述代碼,來探索下會發生些什么:

datetime host hit volume

02018-07-2409:00:00 weibo.com 20 1020

12018-07-2509:00:00 qq.com 20 1028

22018-07-2619:00:00 sina.com missing missing

32018-07-2721:00:00 sohu.com 15 4582

datatype of column hit is:object

由于hit這一列中出現了missing這個字符串,pandas將hit這一列的數據類型判斷成了object。這會給我們對該列數據的運算帶來影響。例如,假設我們要計算hit列前兩行數據的和,代碼如下:

print(df['hit'][0]+ df['hit'][1])

結果是:

2020

本來我們想要的是數學運算結果,但得到的卻是一個字符串拼接結果。這就是由于數據類型判斷失誤帶來的嚴重影響。對于這種情況,read_csv()函數也提供了一個簡單的處理方式,只需要通過na_value參數指定占位符,pandas便會在讀入數據的過程中自動將這些占位符轉換成NaN,從而不影響pandas對column數據類型的正確判斷。示例代碼:

import pandas as pd

CSV_FILE_PATH ='./test.csv'

df = pd.read_csv(CSV_FILE_PATH, skiprows=0, na_values=['missing')

print(df.head(5))

print('datatype of column hit is: '+ str(df['hit'].dtypes))

print(df['hit'][0]+ df['hit'][1])

運行結果如下:

datetime host hit volume

02018-07-2409:00:00 weibo.com 20.01020.0

12018-07-2509:00:00 qq.com 20.01028.0

22018-07-2619:00:00 sina.com NaN NaN

32018-07-2721:00:00 sohu.com 15.04582.0

datatype of column hit is: float64

40.0

可以看到,pandas將數據集中的missing單元全部轉換為了NaN,并成功判斷出hit這一列的數據類型。

3. 總結

通過一個簡單的read_csv()函數,實際可以做到如下幾件事:

通過指定的文件路徑,從本地讀取csv文件,并將數據轉換成DataFrame格式

更正數據集的頭部(column)

正確處理缺失數據

推斷每一列的數據類型

當然,read_csv()函數還有一系列其他參數來應對各種情況,遇到具體問題的同學可參考其接口指南。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據處理
    +關注

    關注

    0

    文章

    626

    瀏覽量

    28996
  • 數據分析
    +關注

    關注

    2

    文章

    1470

    瀏覽量

    34746
  • csv
    csv
    +關注

    關注

    0

    文章

    39

    瀏覽量

    5978

原文標題:干貨 | pandas讀取csv文件數據的方法及注意點

文章出處:【微信號:ZTEdeveloper,微信公眾號:中興開發者社區】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏

    評論

    相關推薦
    熱點推薦

    c語言讀寫表格(csv)文件 讀取csv文件示例

    逗號分隔值(Comma-Separated Values,CSV,有時也稱為字符分隔值,因為分隔字符也可以不是逗號),其文件以純文本形式存儲表格數據(數字和文本)。純文本意味著該文件是一個字符序列
    的頭像 發表于 06-08 09:22 ?7159次閱讀
    c語言讀寫表格(<b class='flag-5'>csv</b>)<b class='flag-5'>文件</b>  <b class='flag-5'>讀取</b><b class='flag-5'>csv</b><b class='flag-5'>文件</b>示例

    Python利用pandas讀寫Excel文件

    使用pandas模塊讀取Excel文件可以更為方便和快捷。pandas可以將Excel文件讀取
    的頭像 發表于 12-16 11:22 ?1762次閱讀
    Python利用<b class='flag-5'>pandas</b>讀寫Excel<b class='flag-5'>文件</b>

    labview如何讀取以制表符分割的csv文件

    把txt文件后綴名改為csv就得到以制表符分割的csv文件,讀取之后需要對數據進行一些處理 刪除和加入一些數據之后另存為txt
    發表于 04-01 10:51

    LabVIEW讀取.CSV文件

    .CSV文件其實也是一種文本文件,跟.xsl文件的區別在于分割符不同,.CSV以逗號(英文)分割,.xsl以tab分割,使用
    發表于 04-07 17:52

    labview讀取動態.csv文件時是隔一段時間讀取相對應的數據

    要求:在讀取動態.csv文件時是隔一段時間讀取舉個例子說明,如圖:1.第1次讀取csv時,數據從
    發表于 06-10 11:19

    csv格式文件讀取問題?

    本帖最后由 金大大 于 2016-11-14 19:48 編輯 現有一個4萬行數字的csv格式的文件,使用讀取電子表格文件控件讀取,但
    發表于 11-12 23:42

    寫入.csv文件的問題

    嗨Vee用戶,我一個Vee測試,我從.csv文件讀取了許多參數,執行測試循環,并在每個循環結束時將結果存儲在another.csv
    發表于 10-09 14:55

    成功解決pandas無法讀取中文文件的問題

    成功解決pandas無法讀取中文文件的問題
    發表于 12-21 10:30

    labview如何自動讀取文件夾中的若干個數據(csv文件

    剛學習labview,希望了解labview如何自動讀取一個文件夾中的若干個csv文件,即完成檢測cs
    發表于 10-16 18:10

    TensorFlow csv文件讀取數據(代碼實現)詳解

    大多數人了解 Pandas 及其在處理大數據文件方面的實用性。TensorFlow 提供了讀取這種文件方法。前面章節中,介紹了如何在 Te
    發表于 07-28 14:40

    如何通過pandas讀取csv文件指定的前幾行?

    今天小編給大家分享一篇Python技術開發方面的文章,如何實現pandas讀取csv文件指定的前幾行,喜歡Python開發的小伙伴下面就隨小編一起來了解一下吧。
    發表于 09-19 17:43 ?16次下載

    讀取公盤文件方法

    讀取公盤文件方法
    發表于 11-07 11:27 ?0次下載

    介紹Python中常用的文件讀取方法以及應用示例

    ython 文件讀取是 Python 語言中的基本操作之一。在編寫Python 程序時,我們經常需要讀取不同的文件,例如文本文件
    的頭像 發表于 04-27 09:16 ?1274次閱讀

    如何使用Python和pandas讀取、寫入文件

    在本文中,我將介紹如何使用 Python 和 pandas讀取、寫入文件。 1、安裝 pip install pandas 2、讀取 i
    的頭像 發表于 09-11 17:52 ?1555次閱讀

    Python教你用 Rows 快速操作csv文件

    Rows 是一個專門用于操作表格的第三方Python模塊。 只要通過 Rows 讀取 csv 文件,她就能生成可以被計算的 Python 對象。 相比于 pandas 的 pd.rea
    的頭像 發表于 10-21 10:18 ?840次閱讀
    主站蜘蛛池模板: 精品无码人妻一区二区免费AV | 99热在线观看 | 亚洲色爽视频在线观看 | 亚洲 欧美 国产 综合 播放 | 美女搜查官被高难度黑人在线播放 | 久草在在线免视频在线观看 | 女人十八毛片水真多啊 | 香蕉久久夜色精品国产小说 | 91原创在线 | 东京热一本无码av | 亚洲AV精品无码国产一区 | 偷窥欧美wc经典tv | 99视频免费观看 | 国产国产乱老熟女视频网站97 | 国产精品无码人妻99999 | 全彩acg无翼乌火影忍者 | 青苹果乐园在线观看电视剧 | 国产不卡无码高清视频 | 2020最新国产自产精品 | 午夜福利理论片在线播放 | 三级貂蝉艳史 在线观看 | 97在线免费观看视频 | 国产高清美女一级a毛片久久w | 日本久久精品毛片一区随边看 | 成a人片亚洲日本久久 | 国产亚洲精品久久久999蜜臀 | 最近中文字幕在线中文视频 | 老师真棒无遮瑕版漫画免费 | 亚洲青青草| 短篇合集纯肉高H深陷骚 | 女人张腿让男人桶免费 | 亚洲精品福利一区二区在线观看 | 国产一区二区不卡老阿姨 | 欧美精品九九99久久在观看 | 在线免费观看国产精品 | 亚洲午夜精品A片久久WWW软件 | 久久久国产精品免费A片蜜芽广 | 国产精品ⅴ视频免费观看 | 亚洲精品中文字幕无码A片蜜桃 | 欧美精品成人一区二区在线观看 | 亚洲国产精品免费线观看视频 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品