终极指南:如何使用 pandas 读取 csv 文件
CSV(逗号分隔值)文件是最常见的数据存储方式之一。
幸运的是,pandas read_csv()函数允许您轻松地在 Python 中读取几乎任何您想要的格式的 CSV 文件。
本教程介绍了使用以下名为“data.csv”的 CSV 文件在 Python 中读取 CSV 文件的几种方法:
playerID,team,points 1,Lakers,26 2,Mavs,19 3,Bucks,24 4,Spurs,22
示例 1:将 CSV 文件读入 pandas DataFrame
以下代码显示了如何将 CSV 文件读入 pandas DataFrame:
#import CSV file as DataFrame df = pd. read_csv ('data.csv') #view DataFrame df playerID team points 0 1 Lakers 26 1 2 Mavs 19 2 3 Bucks 24 3 4 Spurs 22
示例 2:从 CSV 文件读取特定列
以下代码展示了如何将 CSV 文件中标记为“playerID”和“points”的列读取到 pandas DataFrame 中:
#import only specific columns from CSV file df = pd. read_csv ('data.csv', usecols=[' playerID ',' points ']) #view DataFrame df playerID points 0 1 26 1 2 19 2 3 24 3 4 22
您还可以指定列索引来读入 pandas DataFrame:
#import only specific columns from CSV file df = pd. read_csv (' data.csv ', usecols=[ 0,1 ]) #view DataFrame df playerID team 0 1 Lakers 1 2 Mavs 2 3 Bucks 3 4 Spurs
示例3:导入CSV文件时指定标题行
在某些情况下,标题行可能不是 CSV 文件中的第一行。
例如,考虑以下 CSV 文件,其中标题行实际上出现在第二行:
random,data,values
playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22
要将这个 CSV 文件读入 pandas DataFrame,我们可以指定header=1 ,如下所示:
#import from CSV file and specify that header starts on second row df = pd. read_csv ('data.csv', header= 1 ) #view DataFrame df playerID team points 0 1 Lakers 26 1 2 Mavs 19 2 3 Bucks 24 3 4 Spurs 22
示例 4:导入 CSV 文件时跳过行
在导入 CSV 文件时,您还可以使用skiprows参数轻松跳过行。
例如,以下代码显示了如何在导入 CSV 文件时忽略第二行:
#import from CSV file and skip second row df = pd. read_csv ('data.csv', skiprows=[ 1 ] ) #view DataFrame df playerID team points 0 2 Mavs 19 1 3 Bucks 24 2 4 Spurs 22
下面的代码展示了如何在导入 CSV 文件时忽略第二行和第三行:
#import from CSV file and skip second and third rows df = pd. read_csv ('data.csv', skiprows=[ 1,2 ] ) #view DataFrame df playerID team points 1 3 Bucks 24 2 4 Spurs 22
示例 5:使用自定义分隔符读取 CSV 文件
有时,您的 CSV 文件可能包含逗号以外的分隔符。
例如,假设我们的 CSV 文件使用下划线作为分隔符:
playerID_team_points
1_Lakers_26
2_Mavs_19
3_Bucks_24
4_Spurs_22
要将这个 CSV 文件读入 pandas,我们可以使用sep参数来指定读取文件时使用的分隔符:
#import from CSV file and specify delimiter to use df = pd. read_csv ('data.csv', sep=' _ ') #view DataFrame df playerID team points 0 1 Lakers 26 1 2 Mavs 19 2 3 Bucks 24 3 4 Spurs 22
其他资源
以下教程解释了如何执行其他常见的 panda 任务:
如何使用 Pandas 读取文本文件
如何使用 Pandas 读取 Excel 文件
如何使用 Pandas 读取 TSV 文件
如何使用 Pandas 读取 HTML 表格