1. Introduction
a. what’s csv
CSV文件是一种纯文本文件,用于存储表格数据。CSV是Comma-Separated Values的缩写,意为逗号分隔值。每一行表示表格中的一条记录,而每个字段之间用逗号分隔。CSV文件可以用文本编辑器打开并编辑,也可以通过各种数据处理软件(如Microsoft Excel、Google Sheets等)进行导入和导出。CSV文件常用于数据交换和数据存储,因为它具有简单、易读、易写的特点。虽然称为逗号分隔值,但实际上在不同的地区和软件中,也可以使用其他分隔符,如分号、制表符等。
b. tools to handle csv
Python有很多适合处理.csv文件的工具包,以下是其中一些常用的工具包:
-
csv模块:Python内置的csv模块提供了对csv文件的基本读写操作。它可以方便地读取和写入csv文件,并提供了一些方法来处理csv数据。
-
pandas库:pandas是一个强大的数据处理库,它提供了高效的数据结构和数据分析工具。pandas中的read_csv函数可以直接读取csv文件,并将其转换为DataFrame对象,方便进行数据处理和分析。
-
numpy库:numpy是一个用于科学计算的库,它提供了高性能的多维数组对象和相关的数学函数。numpy可以用于读取和处理csv文件中的数值数据。
-
csvkit工具包:csvkit是一个命令行工具包,提供了一系列用于处理csv文件的命令。它可以用于查看、转换、合并、过滤等各种操作。
-
Dask库:Dask是一个灵活的并行计算库,它可以处理大型数据集。Dask可以读取和处理大型csv文件,并进行并行计算和分布式处理。
2. with pandas
import pandas as pd# 读取csv文件
data = pd.read_csv('fer2013.csv')# 按第一列的类别分组
groups = data.groupby(data.columns[-1])# 遍历每个分组,将数据导出为不同的文件
for group_name, group_data in groups:# 构造导出文件名output_file = f'{group_name}.csv'# 导出数据到文件group_data.iloc[:,1].to_csv(output_file, index=False)print("导出完成!")