有一个df1,将df1按照100W行分割为几个小的df,并分别保存为csv文件
时间: 2024-09-24 20:20:49 浏览: 37
在Pandas库中,你可以使用`pandas.DataFrame`的分块功能以及`to_csv`函数来按指定大小分割DataFrame并保存成CSV文件。这里是一个简单的步骤:
```python
import pandas as pd
# 假设df1是你需要处理的数据框
n_rows_per_split = 100_000 # 每份数据的行数限制
file_prefix = 'split_' # 文件名前缀,比如'split_001.csv'
# 获取df1的总行数
total_rows = df1.shape[0]
# 计算需要创建多少个小的DataFrame
num_splits = total_rows // n_rows_per_split + int(total_rows % n_rows_per_split > 0)
for i in range(1, num_splits+1):
start_index = (i - 1) * n_rows_per_split
end_index = min(start_index + n_rows_per_split, total_rows)
# 如果最后一个分片不足100W行,则取剩余的所有行
if i == num_splits and end_index < total_rows:
end_index = total_rows
# 划定当前分片
df_slice = df1.iloc[start_index:end_index]
# 生成文件名
file_name = f'{file_prefix}{i}.csv'
# 保存为CSV文件
df_slice.to_csv(file_name, index=False) # 禁用索引列的保存
阅读全文