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
表示跳过文件的前两行,从第三行(实际的列名行)开始读取,常用于跳过文件头部的注释、说明或无用信息。