Мне нужно импортировать большой набор данных в фрейм данных pandas, чтобы выполнить некоторые манипуляции с данными.
Я обнаружил, что хорошим способом сделать это будет:
- Использованиеразделение на части для загрузки и обработки фреймов данных в чанках. Разбиение задачи, обработка отдельных частей по отдельности и их последующее объединение.
Если я определю размер фрагмента, равный 1000:
pd.read_sql_query(sql=query, con=engine, chunksize=1000)
Каждая итерация цикла читает 1000 строк в кадре данных.
Однако мой фрейм данных имеет столбец DATE, и я должен быть уверен, что каждый блок содержит полный временной ряд (столбец DATE) каждого продукта (столбец SKU).
DATE STORE COD SKU UNITS_SOLD
2018-02-01 HD01 CD 70 539.000
2018-03-01 HD01 CD 70 511.000
2018-04-01 HD01 CD 70 468.000
2018-05-01 HD01 CD 70 447.000
2018-06-01 HD01 CD 70 382.000
2018-07-01 HD01 CD 70 348.000
2018-02-01 HA01 CD 80 539.000
2018-03-01 HA01 CD 80 511.000
2018-04-01 HA01 CD 80 468.000
2018-05-01 HA01 CD 80 447.000
2018-06-01 HA01 CD 80 382.000
2018-07-01 HA01 CD 80 348.000
Как лучше всего убедиться, что каждый блок вернет всю историю продукта?Если в этих 1000 строках есть продукт, который не является полным, я хочу избежать разбиения на 2 части.