read_csv() 是 Pandas 中用于读取 CSV 文件的常用函数,它将文件内容解析为 DataFrame,支持设置分隔符、编码格式、索引列、列名、跳过行、数据类型等参数,适用于从本地或网络加载结构化表格数据,方便后续的数据处理与分析。本文主要介绍Python Pandas read_csv读取csv文件。

1、读取CSV文件

存储大数据集的一种简单方法是使用CSV文件(以逗号分隔的文件)。

CSV文件包含纯文本,并且是一种众所周知的格式,所有人(包括Pandas)都可以读取。

在示例中,将使用一个名为“data.csv”的CSV文件。

data.csv文件:https://www.cjavapy.com/download/5fe1f74edc72d93b4993067c/

例如:

将CSV加载到DataFrame中:

import pandas as pd

df = pd.read_csv('data.csv')

print(df.to_string())

提示:使用to_string()打印整个DataFrame。

默认情况下,当打印DataFrame时,只会得到前5行和后5行:

例如:

输出读取的df:

import pandas as pd

df = pd.read_csv('data.csv')

print(df)

2、read_csv常用操作

read_csv 函数是读取 CSV 文件的常用工具,支持设置编码、指定列名、跳过行数、选择特定列、设置索引列、自动解析日期等参数,能够灵活读取本地或远程的 CSV 数据。

1)指定编码(防止中文乱码)

import pandas as pd

# 读取名为 data.csv 的文件,指定编码为 utf-8(防止中文乱码)
df = pd.read_csv('data.csv', encoding='utf-8')

# 显示前5行数据
print(df.head())

注意:

encoding='utf-8' 适用于大多数 UTF-8 编码的 CSV 文件,特别是包含中文字符时可避免乱码。若打开文件时仍出现乱码,可尝试使用 'gbk''utf-16' 等其他编码。

2)指定列名并跳过表头

import pandas as pd

# 读取 data.csv 文件,并自定义列名为 id、name、score,不使用文件中的表头
df = pd.read_csv('data.csv', names=['id', 'name', 'score'], header=None)

# 打印 DataFrame 内容
print(df)

注意:

names=['id', 'name', 'score']:指定三列的列名。header=None:表示文件中没有表头,首行数据会被当作普通数据读取。

3)设置索引列

import pandas as pd

df = pd.read_csv('data.csv', index_col='id')
print(df)

id 列被设置为 DataFrame 的索引列,方便后续按索引访问数据或进行筛选操作。

4)读取指定列

import pandas as pd

# 从 data.csv 文件中读取指定的两列:name 和 score
df = pd.read_csv('data.csv', usecols=['name', 'score'])

print(df)

注意:

该用法适用于仅需部分列的情况,有助于节省内存和提高效率。

5)读取并跳过前两行

import pandas as pd

df = pd.read_csv('data.csv', skiprows=2)
print(df)

注意:

skiprows=2 表示跳过文件的前两行,从第三行(实际的列名行)开始读取,常用于跳过文件头部的注释、说明或无用信息。

推荐文档