python拆分csv数据
时间: 2023-10-26 18:06:29 浏览: 80
splitcsv:Python 中的一个简单的 csv 文件拆分器。 用于将大型 csv 文件拆分为多个文件
您可以使用Python内置的csv模块来拆分csv数据。以下是一个示例代码,将csv文件按行数拆分成多个文件:
```python
import csv
# 设置每个输出文件的行数
lines_per_file = 1000
# 输入文件名
input_file = 'input.csv'
# 输出文件名前缀
output_file_prefix = 'output_'
# 打开输入文件
with open(input_file, 'r') as csv_file:
# 创建csv读取器
reader = csv.reader(csv_file)
# 跳过头部行
headers = next(reader)
# 初始化行计数器
current_lines = 0
# 初始化输出文件计数器
output_file_num = 1
# 初始化输出文件名
output_file = f"{output_file_prefix}{output_file_num}.csv"
# 打开第一个输出文件
with open(output_file, 'w', newline='') as output_file:
# 创建csv写入器
writer = csv.writer(output_file)
# 写入头部行
writer.writerow(headers)
# 遍历每一行数据
for row in reader:
# 写入当前行
writer.writerow(row)
# 增加行计数器
current_lines += 1
# 如果达到指定行数,关闭当前输出文件,打开新的输出文件
if current_lines == lines_per_file:
output_file_num += 1
current_lines = 0
output_file = f"{output_file_prefix}{output_file_num}.csv"
with open(output_file, 'w', newline='') as output_file:
writer = csv.writer(output_file)
writer.writerow(headers)
```
这个代码将输入文件按每1000行拆分成多个输出文件,输出文件名以"output_"为前缀,后接数字序号和".csv"后缀。您可以根据需要修改行数和输出文件名前缀。
阅读全文