Pandas read_csv()函式

Suraj Joshi 2023年1月30日
  1. pandas.read_csv() 語法
  2. 示例程式碼:Pandas 使用 pandas.read_csv() 函式讀取 CSV 檔案
  3. 示例程式碼:在 pandas.read_csv() 函式中設定 usecols 引數
  4. 示例程式碼:帶有表頭的 pandas.read_csv() 函式
  5. 示例程式碼: 具有跳行的 pandas.read_csv() 函式
Pandas read_csv()函式

Pandas read_csv() 方法將指定的 CSV 檔案讀取到 DataFrame 中。

pandas.read_csv() 語法

pandas.read_csv(filepath_or_buffer: Union[str, pathlib.Path, IO[~ AnyStr]],
                sep=',',
                delimiter=None,
                header='infer',
                names=None,
                index_col=None,
                usecols=None,
                squeeze=False,
                prefix=None,
                mangle_dupe_cols=True,
                dtype=None,
                engine=None,
                converters=None,
                true_values=None,
                false_values=None,
                skipinitialspace=False,
                skiprows=None,
                skipfooter=0,
                nrows=None,
                na_values=None,
                keep_default_na=True,
                na_filter=True,
                verbose=False,
                skip_blank_lines=True,
                parse_dates=False,
                infer_datetime_format=False,
                keep_date_col=False,
                date_parser=None,
                dayfirst=False,
                cache_dates=True,
                iterator=False,
                chunksize=None,
                compression='infer',
                thousands=None,
                decimal: str='.',
                lineterminator=None,
                quotechar='"',
                quoting=0,
                doublequote=True,
                escapechar=None,
                comment=None,
                encoding=None,
                dialect=None,
                error_bad_lines=True,
                warn_bad_lines=True,
                delim_whitespace=False,
                low_memory=True,
                memory_map=False,
                float_precision=None)

引數

filepath_or_buffer 要匯入的 CSV 檔案的位置
delimiter 用於解析 CSV 檔案內容的定界符
usecols 從 CSV 檔案中形成 DataFrame 時,只包含列名。
header 哪一行/幾行作為標題的列名
squeeze 如果解析的資料只包含一列,則返回 Pandas Series
skiprows 跳過哪一行/幾行

返回值

由帶有標籤軸的 CSV 檔案形成的 Dataframe。

示例程式碼:Pandas 使用 pandas.read_csv() 函式讀取 CSV 檔案

import pandas as pd
df = pd.read_csv("dataset.csv")
print(df)

輸出:

       Country      Item Type Sales Channel Order Priority
0       Tuvalu      Baby Food       Offline              H
1   East Timor           Meat        Online              L
2       Norway      Baby Food        Online              L
3     Portugal      Baby Food        Online              H
4     Honduras         Snacks        Online              L
5  New Zealand         Fruits        Online              H
6     Moldova   Personal Care        Online              L

該方法將 CSV 檔案載入到 DataFrame 中。在這裡,我們可以使用絕對路徑和相對路徑來提供一個檔案路徑作為 pandas.read_csv() 函式的引數。

在這種情況下,dataset.csv 與程式檔案在同一目錄下,這意味著可以使用 CSV 檔名作為檔案路徑。

示例程式碼:在 pandas.read_csv() 函式中設定 usecols 引數

import pandas as pd
df = pd.read_csv("dataset.csv",usecols=["Country","Sales Channel","Order Priority"])
print(df)

輸出:

       Country Sales Channel Order Priority
0       Tuvalu       Offline              H
1   East Timor        Online              L
2       Norway        Online              L
3     Portugal        Online              H
4     Honduras        Online              L
5  New Zealand        Online              H
6     Moldova         Online              L

該案例通過只在 usecols 引數中包含指定的列,將 CSV 檔案載入到 DataFrame 中。

CountrySales ChannelOrder Priority 這幾列只作為引數傳遞,所以它們只被包含在 DataFrame 中。

示例程式碼:帶有表頭的 pandas.read_csv() 函式

import pandas as pd
df = pd.read_csv("dataset.csv",header=1)
print(df)

輸出:

        Tuvalu      Baby Food Offline  H
0   East Timor           Meat  Online  L
1       Norway      Baby Food  Online  L
2     Portugal      Baby Food  Online  H
3     Honduras         Snacks  Online  L
4  New Zealand         Fruits  Online  H
5     Moldova   Personal Care  Online  L

該過程通過將第 1 行設定為 header,將 CSV 檔案載入到 DataFrame 中。

這裡,第 1 行元素作為整個 DataFrame 的列名。

示例程式碼: 具有跳行的 pandas.read_csv() 函式

import pandas as pd
df = pd.read_csv("dataset.csv",skiprows=3)
print(df)

輸出:

        Norway      Baby Food  Online  L
0     Portugal      Baby Food  Online  H
1     Honduras         Snacks  Online  L
2  New Zealand         Fruits  Online  H
3     Moldova   Personal Care  Online  L

這個過程通過跳過前 3 行將 CSV 檔案載入到 DataFrame 中。

作者: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

相關文章 - Pandas Core