Python 处理 CSV 数据:全面指南335
CSV(逗号分隔值)文件是一种广泛用于存储表格式数据的文本文件格式。由于其简单性和跨平台兼容性,它经常用于数据交换和分析。本文将详细介绍如何使用 Python 处理 CSV 数据,包括读取、写入、解析和操作。
读取 CSV 文件
要读取 CSV 文件,可以使用 Python 的内置 `csv` 模块。`` 函数返回一个读取器的对象,可以逐行迭代文件中的数据记录。```python
import csv
with open('', 'r') as f:
reader = (f)
for row in reader:
print(row)
```
写入 CSV 文件
要写入 CSV 文件,可以使用 `` 函数返回一个写入器对象,该对象将数据写入文件。```python
import csv
with open('', 'w') as f:
writer = (f)
(['姓名', '年龄', '城市'])
(['约翰', '30', '纽约'])
(['玛丽', '25', '洛杉矶'])
```
解析 CSV 数据
解析 CSV 数据涉及将文本值转换为所需的格式。`csv` 模块提供了几个参数来定制解析过程,例如分隔符、引号和转义字符。```python
import csv
with open('', 'r') as f:
reader = (f, delimiter=';', quotechar='"', escapechar='\\')
for row in reader:
print(row)
```
操作 CSV 数据
一旦 CSV 数据被解析,就可以对其进行操作,例如筛选、排序和聚合。筛选
```python
import csv
from collections import namedtuple
Row = namedtuple('Row', ['name', 'age', 'city'])
with open('', 'r') as f:
reader = (f)
rows = [Row(*row) for row in reader]
filtered_rows = [row for row in rows if > 25]
```
排序
```python
import csv
from operator import itemgetter
with open('', 'r') as f:
reader = (f)
rows = list(reader)
sorted_rows = sorted(rows, key=itemgetter(1))
```
聚合
```python
import csv
from collections import Counter
with open('', 'r') as f:
reader = (f)
counts = Counter(row[2] for row in reader)
```
使用第三方库
还有一些第三方库提供了高级的 CSV 处理功能,例如 Pandas 和 csvkit。Pandas
```python
import pandas as pd
df = pd.read_csv('')
df[['name', 'age']].groupby('name').mean()
```
csvkit
```
csvgrep -c age -r ">25"
```
Python 为处理 CSV 数据提供了广泛的工具和功能。本文介绍了读取、写入、解析和操作 CSV 数据的基本技术。通过利用这些技术,开发人员可以有效地处理和分析大型数据集。
2024-10-16
上一篇:Python读取本地文件

C语言中的round函数:深入理解与实际应用
https://www.shuihudhg.cn/127688.html

Java时序数据库与数据处理最佳实践
https://www.shuihudhg.cn/127687.html

PHP 字符实体解码:深入解析 htmlspecialchars_decode() 及其替代方案
https://www.shuihudhg.cn/127686.html

C语言扫雷游戏核心函数详解及代码实现
https://www.shuihudhg.cn/127685.html

C语言精确计算:浮点数陷阱与高精度解决方案
https://www.shuihudhg.cn/127684.html
热门文章

Python 格式化字符串
https://www.shuihudhg.cn/1272.html

Python 函数库:强大的工具箱,提升编程效率
https://www.shuihudhg.cn/3366.html

Python向CSV文件写入数据
https://www.shuihudhg.cn/372.html

Python 静态代码分析:提升代码质量的利器
https://www.shuihudhg.cn/4753.html

Python 文件名命名规范:最佳实践
https://www.shuihudhg.cn/5836.html