国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

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

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

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

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

我要討論的方法是:

Manual 函數 loadtxt 函數 genfromtxtf 函數 read_csv 函數 Pickle

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

Imports

我們將使用Numpy,Pandas和Pickle軟件包,因此將其導入。

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

1. Manual Function

這是最困難的,因為您必須設計一個自定義函數,該函數可以為您加載數據。您必須處理Python的常規歸檔概念,并使用它來讀取 .csv 文件。

讓我們在100個銷售記錄文件上執行此操作。

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

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

在這里,我創建了一個 load_csv 函數,該函數將要讀取的文件的路徑作為參數。

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

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

邏輯

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

當閱讀標題時,它會將新行檢測為 n 字符,即行終止字符,因此為了刪除它,我使用了 str.replace 函數。

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

為了更漂亮地讀取數據,我將其作為數據框格式返回,因為與numpy數組或python的列表相比,讀取數據框更容易。

輸出量

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

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

利弊

重要的好處是您具有文件結構的所有靈活性和控制權,并且可以以任何想要的格式和方式讀取和存儲它。

您也可以使用自己的邏輯讀取不具有標準結構的文件。

它的重要缺點是,特別是對于標準類型的文件,編寫起來很復雜,因為它們很容易讀取。您必須對需要反復試驗的邏輯進行硬編碼。

僅當文件不是標準格式或想要靈活性并且以庫無法提供的方式讀取文件時,才應使用它。

2. Numpy.loadtxt函數

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

當數據更復雜時,使用此功能很難讀取,但是當文件簡單時,此功能確實非常強大。

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

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

這里,我們簡單地使用了在傳入的定界符中 作為 ’,’的 loadtxt 函數 , 因為這是一個CSV文件。

現在,如果我們打印 df,我們將看到可以使用的相當不錯的numpy數組中的數據。

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

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

由于數據量很大,我們僅打印了前5行。

利弊

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

缺點是您不能有其他數據類型或數據中缺少行。

3. Numpy.genfromtxt()

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

讓我們跳到代碼。

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

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

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

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

這是什么?哦,它已跳過所有具有字符串數據類型的列。怎么處理呢?

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

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

然后輸出

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

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

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

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

我們可以將其打印為

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

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

4. Pandas.read_csv()

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

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

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

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

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

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

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

我們可以看到它已經讀取了沒有標題的 csv 文件。您可以在此處查看官方文檔中的所有其他參數 。

5. Pickle

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

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

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

這將創建一個新文件 test.pkl ,其中包含來自 Pandas 標題的 pdDf 。

現在使用pickle打開它,我們只需要使用 pickle.load 函數。

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

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

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

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

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 免费看真人a一级毛片 | 亚欧色| 欧美性狂猛bbbbbbxxxxxx | 久色网址| 欧美久久一区二区 | 国产一区二区三区在线看 | 免费看美女无遮掩的软件 | 九九九九热精品视频 | 草草影院第一页yycccom | 91成人在线免费观看 | 久久综合久久综合九色 | 521a久久九九久久精品 | avtt加勒比手机版天堂网 | 精品一区二区三区免费视频 | 国产精品短视频免费观看 | 中文字幕在线观看亚洲日韩 | 国产一区二区三区在线观看视频 | 久久久久99精品成人片三人毛片 | 成年人在线视频 | 欧美激情视频在线观看一区二区三区 | 爱逼综合网 | 男的操美女 | 亚洲精品美女 | 日本一级特黄a大片 | 免费一级欧美片在线观看 | 免费一级a毛片 | 国产精品久久九九 | 日韩一区二区视频在线观看 | 亚洲精品理论 | 国产精品久久久久影视不卡 | 香蕉99国内自产自拍视频 | 久久视频免费观看 | 国产91综合 | 一级毛片a免费播放王色 | 午夜性福 | 日本成人免费在线观看 | 亚洲国产精品日韩高清秒播 | 伊人99re| 色毛片| 特级片在线观看 | 精品中文字幕不卡在线视频 |