Рубрики
Без рубрики

Фильтр большой файл CSV с Python

Проблема с большими файлами в Excel, как правило, размером, как SE. Это то, что Excel пытается показать … Теги с Python, CSV, Excel, начинающими.

Проблема с большими файлами в Excel, как правило, размером, как SE. Это тот, что Excel пытается показать вам всю свою работу. Чтобы изменить огромные файлы CSV или XLSX, такие как экспорт из ваших таблиц SalesForce «Задача» и «контактные» таблицы, рассмотрим запись кода с таким же языком, как Python.

Почему Excel изменяет большие файлы медленно

Если вы работаете с огромными электронными таблицами, вы, вероятно, заморожены Excel, пытаясь фильтровать файл и удалить определенные строки.

Например, скачать файл ” 100000 записей продаж – 3,54 МБ ” С сайта ” e для Excel .”

  1. Откройте его в Excel.
  2. Фильтр на «стране» и показать только «Алжир», «Армения», «Австралия», «Барбадос».
  3. Выберите все видимые линии.
  4. Щелкните правой кнопкой мыши номер справа и удалите все видимые линии.

Это займет несколько секунд, верно? Мой компьютер довольно велик – с 2017 года с 4-ядерным процессором 2,50 ГГц и 16 ГБ RAM, ET Excel замерзнет на 6 секунд.

Однако он не удаляет строки, которые замедляются.

Он повторно рисует электронную таблицу на вашем экране, который съедает ваш компьютер.

Python может модифицировать большие файлы быстрее

Поскольку программы без графического пользовательского интерфейса могут работать, не показывая вам, что они до того, как они до, небольшая часть Python Code может сделать это редактирование менее чем на десятую секунду.

Проверьте результаты Этот сценарий Python :

import pandas
import datetime

df = pandas.read_csv('100000 Sales Records.csv')

badcountries = ['Algeria','Armenia','Australia','Barbados']

print('There are ' + str(len(df)) + ' rows in the dataset before deleting the "bad" country rows.')
print('Il y a ' + str(len(df)) + ' enregistrements dans les données avant de supprimer ceux des pays non-désirées.')

print()

t1 = datetime.datetime.now()
df = df[~df['Country'].isin(badcountries)]
t2 = datetime.datetime.now()

tm = round((t2 - t1).total_seconds(), 2)
print('It took ' + str(tm) + ' seconds to delete the "bad" country rows.')
print('Il a fallu ' + str(tm) + ' seconds pour suppprimer les données des pays non-désirées.')

print()

print('There are ' + str(len(df)) + ' rows in the dataset after deleting the "bad" country rows.')
print('Il y a ' + str(len(df)) + ' enregistrements dans les données après avoir supprimé ceux des pays non-désirées.')
There are 100000 rows in the dataset before deleting the "bad" country rows.
Il y a 100000 enregistrements dans les données avant de supprimer ceux des pays non-désirées.

It took 0.08 seconds to delete the "bad" country rows.
Il a fallu 0.08 seconds pour suppprimer les données des pays non-désirées.

There are 97885 rows in the dataset after deleting the "bad" country rows.
Il y a 97885 enregistrements dans les données après avoir supprimé ceux des pays non-désirées

Не нужно выбирать Python в качестве языка программирования для таких рабочих мест, но важно учитывать код на основе кода для преобразования ваших данных. То, что позволяет машине работать без остановки, чтобы показать вам, что это делает.

(Однако я делаю, думаю, что Python’s довольно привеящий простой язык программирования, чтобы узнать.)

Теперь ты знаешь!

Оригинал: “https://dev.to/katiekodes/filter-a-large-csv-file-with-python-3d8j”