作為Python中最流行的數據處理工具,Pandas早已成為數據科學家和分析師的首選。Pandas的read_csv方法是最常用的方法之一,我們可以使用它輕鬆地將結構化數據和表格數據加載到Pandas DataFrame中。然而,read_csv方法中有許多參數,本文將逐一討論這些參數,以幫助您更好地了解read_csv方法。
一、參數filepath_or_buffer、sep和delimiter
在使用read_csv方法時,您必須指定要讀取的文件名或文件路徑,可以使用filepath_or_buffer參數。除此之外,您還需要指定各列之間的分隔符,通常使用逗號分隔(默認值),但有時也需要使用其他分隔符。對於這些情況,您可以使用sep和delimiter參數。
例如,以下是使用不同分隔符讀取數據的示例:
import pandas as pd # 使用默認逗號分隔符 df1 = pd.read_csv('data.csv') # 使用製表符分隔符 df2 = pd.read_csv('data.csv', sep='\t') # 使用分號分隔符 df3 = pd.read_csv('data.csv', delimiter=';')
二、參數header
header參數用於指定哪行應該用作列名。默認情況下,read_csv方法假設文件的第一行是列名。如果文件沒有列名,則可以將header參數設置為None。
另外,如果文件包含多個標題行,則可以將header參數設置為1或更高的數字來指定標題行號。
例如,以下是使用不同header參數讀取數據的示例:
import pandas as pd # 第一行為列名 df1 = pd.read_csv('data.csv') # 第二行為列名 df2 = pd.read_csv('data.csv', header=1) # 沒有列名 df3 = pd.read_csv('data.csv', header=None)
三、參數index_col
index_col參數用於指定要作為行索引的列。默認情況下,行索引從0開始遞增。可以設置為列名或列號。
例如,以下是使用index_col參數指定不同行索引的示例:
import pandas as pd # 使用默認行索引 df1 = pd.read_csv('data.csv') # 使用第一列作為行索引 df2 = pd.read_csv('data.csv', index_col=0) # 使用指定列名作為行索引 df3 = pd.read_csv('data.csv', index_col='Name')
四、參數usecols和dtype
usecols參數用於選擇要讀取的列。這使您可以僅讀取文件中感興趣的列,而不是文件中的所有列。您可以使用列名或列號來選擇列。
dtype參數用於指定列的數據類型。如果文件的列包含非標準數據類型,則必須使用此參數。
例如,以下是使用usecols和dtype參數選擇和指定不同列的示例:
import pandas as pd # 讀取文件中的所有列 df1 = pd.read_csv('data.csv') # 僅讀取第一列和第三列 df2 = pd.read_csv('data.csv', usecols=[0, 2]) # 指定數據類型的列 df3 = pd.read_csv('data.csv', dtype={'Age': 'int', 'Salary': 'float'})
五、參數skiprows和nrows
skiprows參數用於跳過數據文件中的前n行。nrows參數用於讀取文件中的前n行。
例如,以下是使用skiprows和nrows參數跳過和讀取不同行的示例:
import pandas as pd # 跳過前5行 df1 = pd.read_csv('data.csv', skiprows=5) # 讀取前10行 df2 = pd.read_csv('data.csv', nrows=10) # 跳過前5行並讀取10行 df3 = pd.read_csv('data.csv', skiprows=5, nrows=10)
六、參數na_values和keep_default_na
na_values參數用於將特定的值視為NA / NaN值。有時,數據文件中會包含缺失值。使用na_values參數可以將文件中的特定值轉換為NaN。 keep_default_na參數用於確認寫入的字符串是是否為NA / NaN值。
例如,以下是使用na_values和keep_default_na參數轉換不同NaN值的示例:
import pandas as pd # 將「N/A」視為NaN值 df1 = pd.read_csv('data.csv', na_values=['N/A']) # 將「0」轉換為NaN值 df2 = pd.read_csv('data.csv', na_values=[0]) # 將「-」轉換為NaN值 df3 = pd.read_csv('data.csv', na_values=['-']) # 確認字符「N/A」不是NaN值 df4 = pd.read_csv('data.csv', keep_default_na=False)
七、常用參數匯總
以下是本文介紹的參數的表格總結:
參數 | 功能 | 示例 |
---|---|---|
filepath_or_buffer | 要讀取的文件名或文件路徑 | pd.read_csv(‘data.csv’) |
sep | 用於分隔列的分隔符 | pd.read_csv(‘data.csv’, sep=’\t’) |
delimiter | 用於分隔列的分隔符 | pd.read_csv(‘data.csv’, delimiter=’;’) |
header | 指定要用作列名的行 | pd.read_csv(‘data.csv’, header=1) |
index_col | 指定要用作行索引的列 | pd.read_csv(‘data.csv’, index_col=’Name’) |
usecols | 選擇要讀取的列 | pd.read_csv(‘data.csv’, usecols=[0, 2]) |
dtype | 指定列的數據類型 | pd.read_csv(‘data.csv’, dtype={‘Age’: ‘int’, ‘Salary’: ‘float’}) |
skiprows | 跳過數據文件中的前n行 | pd.read_csv(‘data.csv’, skiprows=5) |
nrows | 讀取文件中的前n行 | pd.read_csv(‘data.csv’, nrows=10) |
na_values | 將特定的值視為NaN值 | pd.read_csv(‘data.csv’, na_values=[‘N/A’]) |
keep_default_na | 確認寫入的字符串是是否為NA / NaN值 | pd.read_csv(‘data.csv’, keep_default_na=False) |
原創文章,作者:OKVAD,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/316848.html