python切分csv文件

python按列将一个大csv文件划分为多个小csv

有时候从数据库导出的文件会非常大,而且各种类型的数据会混杂在一起,在进行数据分析时会比较麻烦,我们需要将大文件按某种规律分为几个小文件,便于处理,这里用到了python里的pandas包,首先使用sort_value方法对文件进行排序,然后对排好的数据进行切分,这里利用groupby进行分割。

import pandas as pd
data = pd.read_csv(r'2021rewang.csv')
data = data.sort_values(by=['device_id','record_time'],ascending=True)#ascending=true代表从小到大排列,false从大到小。同时按这两列进行排序
groups = data.groupby(data['device_id']) #按“device”列的值分为多个文件,即分组
#比如color列有“red, yellow, green”三个不同类型的值,则会分为4.csv; 5.csv; 6.csv等文件。

for group in groups:
    group[1].to_csv('../{}.csv'.format(str(group[0])) , index=False, encoding='utf-8')
#利用循环语句给分成的文件命名并保存
data = pd.DataFrame(data)
print(data.shape)
print(data)

你可能感兴趣的:(python,数据分析,大数据)