一、基礎參數
pandas.read_excel函數是pandas庫中一個重要的函數,用於將Excel文件讀入DataFrame。下面我們將從基礎參數入手,詳細介紹這個函數的各種參數及其作用。
1. io
io參數是必須要傳的參數,表示要讀取的Excel文件的路徑或文件句柄。可以是本地路徑,也可以是遠程文件的url。示例代碼:
import pandas as pd # 讀取本地文件 df = pd.read_excel('example.xlsx') # 讀取遠程文件 df = pd.read_excel('http://example.com/file.xlsx')
2. sheet_name
sheet_name參數用於指定需要讀取的sheet名稱或者sheet編號。默認情況下,它會讀取Excel文件中的第一個sheet。如果需要讀取多個sheet,可以傳入一個列表或者None。
import pandas as pd # 讀取指定sheet df1 = pd.read_excel('example.xlsx', sheet_name='Sheet1') df2 = pd.read_excel('example.xlsx', sheet_name='Sheet2') # 讀取所有sheet df_list = pd.read_excel('example.xlsx', sheet_name=None)
3. header
header參數用於指定表頭所在行數。默認值為0,即第一行是表頭。如果不需要表頭,則可以設置為None。如果表頭不在第一行,可以傳入一個整數表示表頭所在行數。示例代碼:
import pandas as pd # 無表頭 df = pd.read_excel('example.xlsx', header=None) # 表頭在第2行 df = pd.read_excel('example.xlsx', header=1)
4. names
names參數用於指定新的列名,它需要和header=None一同使用。示例代碼:
import pandas as pd # 修改列名 df = pd.read_excel('example.xlsx', header=None, names=['col1', 'col2', 'col3'])
5. index_col
index_col參數用於指定某一列作為行索引。默認情況下,不會將任何列作為行索引。示例代碼:
import pandas as pd # 將第一列作為行索引 df = pd.read_excel('example.xlsx', index_col=0)
二、進階參數
除了基礎參數,pandas.read_excel還提供了一些進階參數,下面我們來逐一介紹。
1. usecols
usecols參數用於指定讀取哪些列,可以傳入一個列表,也可以傳入一個lambda函數。示例代碼如下:
import pandas as pd # 讀取指定列 df = pd.read_excel('example.xlsx', usecols=['A', 'B', 'C']) # 使用lambda函數讀取列 df = pd.read_excel('example.xlsx', usecols=lambda x: x.startswith('col'))
2. dtype
dtype參數用於指定每一列的數據類型,可以傳入一個字典來指定,也可以傳入一個類型。示例代碼如下:
import pandas as pd import numpy as np # 指定列的數據類型 df = pd.read_excel('example.xlsx', dtype={'col1': str, 'col3': np.float32}) # 指定所有列的數據類型 df = pd.read_excel('example.xlsx', dtype=np.float32)
3. parse_dates
parse_dates參數用於自動解析日期列,可以傳入一個列表或者字典,也可以設置為True來解析所有日期列。示例代碼如下:
import pandas as pd # 自動解析日期列 df = pd.read_excel('example.xlsx', parse_dates=['date_col']) # 解析所有日期列 df = pd.read_excel('example.xlsx', parse_dates=True)
4. date_parser
date_parser參數用於指定日期的解析函數,通常可以用它來處理Excel中的日期格式。示例代碼如下:
import pandas as pd from dateutil.parser import parse # 自定義解析日期函數 def my_parse_date(date_str): return parse(date_str, dayfirst=True) # 使用自定義解析函數 df = pd.read_excel('example.xlsx', parse_dates=['date_col'], date_parser=my_parse_date)
5. na_values
na_values參數用於指定缺失值的標識符,可以傳入一個列表或者字典。示例代碼如下:
import pandas as pd # 指定缺失值標識符 df = pd.read_excel('example.xlsx', na_values=['#N/A', -999])
三、讀取多個sheet
pandas.read_excel還可以讀取多個Excel文件,下面介紹如何讀取多個Excel文件中的多個sheet。
import pandas as pd # 讀取多個Excel文件中的指定sheet dfs = {} for file in ['file1.xlsx', 'file2.xlsx']: sheets = pd.read_excel(file, sheet_name=['Sheet1', 'Sheet2']) dfs[file] = sheets # 將多個DataFrame拼接在一起 result = pd.concat(dfs, axis=0)
四、總結
本文主要介紹了pandas.read_excel函數的各種參數及其作用,從基礎參數到進階參數,再到讀取多個Excel文件中的多個sheet。在實際工作中,熟練使用這些參數可以提高我們的數據讀取效率,也可以更加輕鬆地掌握Excel表格中的數據。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/236422.html