Я обрабатываю некоторые данные в Python с ~ 5 миллионами строк. Мне нужно экспортировать эти данные в CSV-файлы на основе конкретного значения в столбце. Я также хочу убедиться, что ни один файл не содержит более 1 миллиона строк. Если файл содержит более 1 миллиона строк, Python создаст другой файл CSV для хранения остальных данных.
Я пробовал следующий код для экспорта файлов на основе значения столбца в столбце 'col', но я не уверен, как ограничить каждый файл 1 миллионами строк.
for u in df['col'].unique():
file_name = 'output/{0}.csv'.format(u)
df[df['col'] == u].to_csv(file_name, encoding = 'utf-8', index =
False)
Пример. Предположим, у меня есть следующие данные, когда city = 'new_york', у нас 2 миллиона строк, когда city = 'miami', у нас 1 миллион строк.
city = ['new_york', 'new_york','new_york','miami','miami']
population = ['8.5','3.9','0.25','0.45','1.4','0.87']
df = pd.DataFrame({'city':city,'population':population})
В этом случае мне нужно всего три csv-файла: new_york0.csv, new_york1.csv и 'miami.csv'. 'new_york0.csv' и 'new_york1.csv' должны содержать данные только тогда, когда city = 'new_york' и каждый файл содержит 1 миллион строк. 'miami.csv' содержит данные, когда city = 'miami'