一、基礎參數
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
微信掃一掃
支付寶掃一掃