Когда мы проводим анализ данных или строим модели для прогнозирования с помощью машинного обучения, мы сталкиваемся с различными форматами данных.
В этом блоге мы обсудим
- CSV-формат
- Формат паркета
- Формат пера
CSV-формат:
Стандартный формат для большинства табличных соревнований — CSV. CSV означает значения, разделенные запятыми. Он используется для хранения значений, разделенных запятыми. Это наиболее распространенный тип данных для хранения различных видов табличных наборов данных.
Но есть некоторые недостатки в использовании формата CSV. Формат CSV отлично работает, когда размер данных меньше (‹ 3 ГБ, т.е. меньше объем данных), но по мере увеличения размера содержимого файлы CSV не являются эффективным способом хранения данных и управления ими. CSV занимает больше времени для чтения. Когда данные имеют большой размер (≥15 ГБ), чтение CSV-файлов с пандами забьет всю оперативную память. Таким образом, это не очень эффективный способ, если вы хотите хранить большие файлы.
# for reading the CSV files
import pandas as pd
df = pd.read_csv("path to csv file")
# for writing to csv fiels
# considering we have dataframe which we want to write under csv file
df.to_csv("fle_save_location.csv", index =False)
Формат паркета (.parquet)
Паркет легковесен для сохранения фреймов данных. Parquet использует эффективную схему сжатия и кодирования данных для быстрого хранения и поиска данных. Паркет со сжатием «gzip» (для хранения): Экспортировать немного быстрее, чем просто .csv (если нужно заархивировать CSV, то паркет намного быстрее). Импорт примерно в 2 раза быстрее, чем CSV. Сжатие составляет около 22% от исходного размера файла, что примерно равно сжатым CSV-файлам.
# for reading parquet files
df = pd.read_parquet("parquet_file_path")
# for writign to the parquet format
df.to_parquet("file_path_tostore.parquet")
Формат пера (.ftr)
Формат Feather более эффективен по сравнению с форматом parquet с точки зрения извлечения данных. Хотя он занимает сравнительно больше места, чем формат паркета, хранение в этом формате обеспечит эффективное извлечение данных.
растушевка со сжатием «ZSTD» (для скорости ввода-вывода): по сравнению с CSV экспорт растушевки имеет в 20 раз более быстрый экспорт и примерно в 6 раз более быстрый импорт. Хранилище составляет около 32% от исходного размера файла, что на 10% хуже, чем сжатый паркет «gzip» и CSV, но все же приличный.
# for reading feather format files
df = pd.read_feather("FILE_PATH_TO_FTR_FILE")
# for writing data into feather format
df.to_feather(pingInfoFilePath)