电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Python加載數(shù)據(jù)的5種不同方式(收藏)

瀏覽:23日期:2022-07-05 15:12:32

數(shù)據(jù)是數(shù)據(jù)科學(xué)家的基礎(chǔ),因此了解許多加載數(shù)據(jù)進(jìn)行分析的方法至關(guān)重要。在這里,我們將介紹五種Python數(shù)據(jù)輸入技術(shù),并提供代碼示例供您參考。

作為初學(xué)者,您可能只知道一種使用p andas.read_csv函數(shù)讀取數(shù)據(jù)的方式(通常以CSV格式)。它是最成熟,功能最強(qiáng)大的功能之一,但其他方法很有幫助,有時(shí)肯定會派上用場。

我要討論的方法是:

Manual 函數(shù) loadtxt 函數(shù) genfromtxtf 函數(shù) read_csv 函數(shù) Pickle

我們將用于加載數(shù)據(jù)的數(shù)據(jù)集可以在此處找到 。它被稱為100-Sales-Records。

Imports

我們將使用Numpy,Pandas和Pickle軟件包,因此將其導(dǎo)入。

Python加載數(shù)據(jù)的5種不同方式(收藏)

1. Manual Function

這是最困難的,因?yàn)槟仨氃O(shè)計(jì)一個(gè)自定義函數(shù),該函數(shù)可以為您加載數(shù)據(jù)。您必須處理Python的常規(guī)歸檔概念,并使用它來讀取 .csv 文件。

讓我們在100個(gè)銷售記錄文件上執(zhí)行此操作。

Python加載數(shù)據(jù)的5種不同方式(收藏)

嗯,這是什么????似乎有點(diǎn)復(fù)雜的代碼!!!讓我們逐步打破它,以便您了解正在發(fā)生的事情,并且可以應(yīng)用類似的邏輯來讀取 自己的 .csv文件。

在這里,我創(chuàng)建了一個(gè) load_csv 函數(shù),該函數(shù)將要讀取的文件的路徑作為參數(shù)。

我有一個(gè)名為data 的列表, 它將具有我的CSV文件數(shù)據(jù),而另一個(gè)列表 col 將具有我的列名。現(xiàn)在,在手動檢查了csv之后,我知道列名在第一行中,因此在我的第一次迭代中,我必須將第一行的數(shù)據(jù)存儲在 col中, 并將其余行存儲在 data中。

為了檢查第一次迭代,我使用了一個(gè)名為checkcol 的布爾變量, 它為False,并且在第一次迭代中為false時(shí),它將第一行的數(shù)據(jù)存儲在 col中 ,然后將checkcol 設(shè)置 為True,因此我們將處理 數(shù)據(jù)列表并將其余值存儲在 數(shù)據(jù)列表中。

邏輯

這里的主要邏輯是,我使用readlines() Python中的函數(shù)在文件中進(jìn)行了迭代 。此函數(shù)返回一個(gè)列表,其中包含文件中的所有行。

當(dāng)閱讀標(biāo)題時(shí),它會將新行檢測為 n 字符,即行終止字符,因此為了刪除它,我使用了 str.replace 函數(shù)。

由于這是一個(gè) 的.csv 文件,所以我必須要根據(jù)不同的東西 逗號 ,所以我會各執(zhí)一個(gè)字符串, 用 string.split(“”) 。對于第一次迭代,我將存儲第一行,其中包含列名的列表稱為 col。然后,我會將所有數(shù)據(jù)附加到名為data的列表中 。

為了更漂亮地讀取數(shù)據(jù),我將其作為數(shù)據(jù)框格式返回,因?yàn)榕cnumpy數(shù)組或python的列表相比,讀取數(shù)據(jù)框更容易。

輸出量

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

利弊

重要的好處是您具有文件結(jié)構(gòu)的所有靈活性和控制權(quán),并且可以以任何想要的格式和方式讀取和存儲它。

您也可以使用自己的邏輯讀取不具有標(biāo)準(zhǔn)結(jié)構(gòu)的文件。

它的重要缺點(diǎn)是,特別是對于標(biāo)準(zhǔn)類型的文件,編寫起來很復(fù)雜,因?yàn)樗鼈兒苋菀鬃x取。您必須對需要反復(fù)試驗(yàn)的邏輯進(jìn)行硬編碼。

僅當(dāng)文件不是標(biāo)準(zhǔn)格式或想要靈活性并且以庫無法提供的方式讀取文件時(shí),才應(yīng)使用它。

2. Numpy.loadtxt函數(shù)

這是Python中著名的數(shù)字庫Numpy中的內(nèi)置函數(shù)。加載數(shù)據(jù)是一個(gè)非常簡單的功能。這對于讀取相同數(shù)據(jù)類型的數(shù)據(jù)非常有用。

當(dāng)數(shù)據(jù)更復(fù)雜時(shí),使用此功能很難讀取,但是當(dāng)文件簡單時(shí),此功能確實(shí)非常強(qiáng)大。

要獲取單一類型的數(shù)據(jù),可以下載 此處 虛擬數(shù)據(jù)集。讓我們跳到代碼。

Python加載數(shù)據(jù)的5種不同方式(收藏)

這里,我們簡單地使用了在傳入的定界符中 作為 ’,’的 loadtxt 函數(shù) , 因?yàn)檫@是一個(gè)CSV文件。

現(xiàn)在,如果我們打印 df,我們將看到可以使用的相當(dāng)不錯(cuò)的numpy數(shù)組中的數(shù)據(jù)。

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

由于數(shù)據(jù)量很大,我們僅打印了前5行。

利弊

使用此功能的一個(gè)重要方面是您可以將文件中的數(shù)據(jù)快速加載到numpy數(shù)組中。

缺點(diǎn)是您不能有其他數(shù)據(jù)類型或數(shù)據(jù)中缺少行。

3. Numpy.genfromtxt()

我們將使用數(shù)據(jù)集,即第一個(gè)示例中使用的數(shù)據(jù)集“ 100 Sales Records.csv”,以證明其中可以包含多種數(shù)據(jù)類型。

讓我們跳到代碼。

Python加載數(shù)據(jù)的5種不同方式(收藏)

為了更清楚地看到它,我們可以以數(shù)據(jù)框格式看到它,即

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

這是什么?哦,它已跳過所有具有字符串?dāng)?shù)據(jù)類型的列。怎么處理呢?

只需添加另一個(gè) dtype 參數(shù)并將dtype 設(shè)置 為None即可,這意味著它必須照顧每一列本身的數(shù)據(jù)類型。不將整個(gè)數(shù)據(jù)轉(zhuǎn)換為單個(gè)dtype。

Python加載數(shù)據(jù)的5種不同方式(收藏)

然后輸出

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

比第一個(gè)要好得多,但是這里的“列”標(biāo)題是“行”,要使其成為列標(biāo)題,我們必須添加另一個(gè)參數(shù),即 名稱 ,并將其設(shè)置為 True, 這樣它將第一行作為“列標(biāo)題”。

df3 = np.genfromtxt(’100 Sales Records.csv’, delimiter=’,’, dtype=None, names=True, encoding=’utf-8’)

我們可以將其打印為

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

4. Pandas.read_csv()

Pandas是一個(gè)非常流行的數(shù)據(jù)操作庫,它非常常用。read_csv()是非常重要且成熟的 功能 之一,它 可以非常輕松地讀取任何 .csv 文件并幫助我們進(jìn)行操作。讓我們在100個(gè)銷售記錄的數(shù)據(jù)集上進(jìn)行操作。

此功能易于使用,因此非常受歡迎。您可以將其與我們之前的代碼進(jìn)行比較,然后進(jìn)行檢查。

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

你猜怎么著?我們完了。這實(shí)際上是如此簡單和易于使用。Pandas.read_csv肯定提供了許多其他參數(shù)來調(diào)整我們的數(shù)據(jù)集,例如在我們的 convertcsv.csv 文件中,我們沒有列名,因此我們可以將其讀取為

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

我們可以看到它已經(jīng)讀取了沒有標(biāo)題的 csv 文件。您可以在此處查看官方文檔中的所有其他參數(shù) 。

5. Pickle

如果您的數(shù)據(jù)不是人類可以理解的良好格式,則可以使用pickle將其保存為二進(jìn)制格式。然后,您可以使用pickle庫輕松地重新加載它。

我們將獲取100個(gè)銷售記錄的CSV文件,并首先將其保存為pickle格式,以便我們可以讀取它。

Python加載數(shù)據(jù)的5種不同方式(收藏)

這將創(chuàng)建一個(gè)新文件 test.pkl ,其中包含來自 Pandas 標(biāo)題的 pdDf 。

現(xiàn)在使用pickle打開它,我們只需要使用 pickle.load 函數(shù)。

Python加載數(shù)據(jù)的5種不同方式(收藏)

Python加載數(shù)據(jù)的5種不同方式(收藏)

在這里,我們已成功從pandas.DataFrame 格式的pickle文件中加載了數(shù)據(jù) 。

到此這篇關(guān)于Python加載數(shù)據(jù)的5種不同方式(收藏)的文章就介紹到這了,更多相關(guān)Python 加載數(shù)據(jù)內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 铝合金电阻-无源谐波滤波器-上海稳达电讯设备厂 | 一礼通 (www.yilitong.com)-企业礼品解决方案一站式服务平台 | 电机铸铝配件_汽车压铸铝合金件_发动机压铸件_青岛颖圣赫机械有限公司 | 齿轮减速机_齿轮减速电机-VEMT蜗轮蜗杆减速机马达生产厂家瓦玛特传动瑞环机电 | 上海恒驭仪器有限公司-实验室平板硫化机-小型平板硫化机-全自动平板硫化机 | 天津暖气片厂家_钢制散热器_天津铜铝复合暖气片_维尼罗散热器 | 气象监测系统_气象传感器_微型气象仪_气象环境监测仪-山东风途物联网 | 刺绳_刀片刺网_刺丝滚笼_不锈钢刺绳生产厂家_安平县浩荣金属丝网制品有限公司-安平县浩荣金属丝网制品有限公司 | 心得体会网_心得体会格式范文模板 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库-首页-东莞市傲马网络科技有限公司 | 酶联免疫分析仪-多管旋涡混合仪|混合器-莱普特科学仪器(北京)有限公司 | 济南保安公司加盟挂靠-亮剑国际安保服务集团总部-山东保安公司|济南保安培训学校 | LCD3D打印机|教育|桌面|光固化|FDM3D打印机|3D打印设备-广州造维科技有限公司 | 氧化锆陶瓷_氧化锆陶瓷加工_氧化锆陶瓷生产厂家-康柏工业陶瓷有限公司 | 尚为传动-专业高精密蜗轮蜗杆,双导程蜗轮蜗杆,蜗轮蜗杆减速机,蜗杆减速机生产厂家 | 定制异形重型钢格栅板/钢格板_定做踏步板/排水沟盖板_钢格栅板批发厂家-河北圣墨金属制品有限公司 | 深圳品牌设计公司-LOGO设计公司-VI设计公司-未壳创意 | 正压密封性测试仪-静态发色仪-导丝头柔软性测试仪-济南恒品机电技术有限公司 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 震动筛选机|震动分筛机|筛粉机|振筛机|振荡筛-振动筛分设备专业生产厂家高服机械 | 低压载波电能表-单相导轨式电能表-华邦电力科技股份有限公司-智能物联网综合管理平台 | 丙烷/液氧/液氮气化器,丙烷/液氧/液氮汽化器-无锡舍勒能源科技有限公司 | 气动|电动调节阀|球阀|蝶阀-自力式调节阀-上海渠工阀门管道工程有限公司 | 滚筒烘干机_转筒烘干机_滚筒干燥机_转筒干燥机_回转烘干机_回转干燥机-设备生产厂家 | 金库门,金库房,金库门厂家,金库门价格-河北特旺柜业有限公司 | 食品机械专用传感器-落料放大器-低价接近开关-菲德自控技术(天津)有限公司 | 杭州成人高考_浙江省成人高考网上报名| 桌上式超净工作台-水平送风超净工作台-上海康路仪器设备有限公司 | 挤塑板-XPS挤塑板-挤塑板设备厂家[襄阳欧格] | 浙江宝泉阀门有限公司 | 称重传感器,测力传感器,拉压力传感器,压力变送器,扭矩传感器,南京凯基特电气有限公司 | 企业微信scrm管理系统_客户关系管理平台_私域流量运营工具_CRM、ERP、OA软件-腾辉网络 | 全温度恒温培养摇床-大容量-立式-远红外二氧化碳培养箱|南荣百科 | 食品机械专用传感器-落料放大器-低价接近开关-菲德自控技术(天津)有限公司 | 新型游乐设备,360大摆锤游乐设备「诚信厂家」-山东方鑫游乐设备 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 微妙网,专业的动画师、特效师、CG模型设计师网站! - wmiao.com 超声波电磁流量计-液位计-孔板流量计-料位计-江苏信仪自动化仪表有限公司 | 政府园区专业委托招商平台_助力企业选址项目快速落地_东方龙商务集团 | 风信子发稿-专注为企业提供全球新闻稿发布服务 | 灰板纸、灰底白、硬纸板等纸品生产商-金泊纸业 | 今日热点_实时热点_奇闻异事_趣闻趣事_灵异事件 - 奇闻事件 | 电梯乘运质量测试仪_电梯安全评估测试仪-武汉懿之刻 |