Чтение файлов с пандами в Jupyter слишком медленно - PullRequest
0 голосов
/ 05 октября 2018

У меня 6 800M CSV-файлов, но в jupyter мне потребовались десятки минут, чтобы прочитать 6 CSV-файлов с пандами.Есть ли способ улучшить скорость чтения?В нем более десятка столбцов и более 50 миллионов строк.

    green_taxi1=pd.DataFrame(pd.read_csv('C:/Users/24829/Documents/Datasets/黄色出租车月度指标/yellow_tripdata_2017-01.csv',header=0,usecols=[1,3,4,9],engine='python'))
    green_taxi2=pd.DataFrame(pd.read_csv('C:/Users/24829/Documents/Datasets/黄色出租车月度指标/yellow_tripdata_2017-02.csv',header=0,usecols=[1,3,4,9],engine='python'))
    green_taxi3=pd.DataFrame(pd.read_csv('C:/Users/24829/Documents/Datasets/黄色出租车月度指标/yellow_tripdata_2017-03.csv',header=0,usecols=[1,3,4,9],engine='python'))
    green_taxi4=pd.DataFrame(pd.read_csv('C:/Users/24829/Documents/Datasets/黄色出租车月度指标/yellow_tripdata_2017-04.csv',header=0,usecols=[1,3,4,9],engine='python'))
    green_taxi5=pd.DataFrame(pd.read_csv('C:/Users/24829/Documents/Datasets/黄色出租车月度指标/yellow_tripdata_2017-05.csv',header=0,usecols=[1,3,4,9],engine='python'))
    green_taxi6=pd.DataFrame(pd.read_csv('C:/Users/24829/Documents/Datasets/黄色出租车月度指标/yellow_tripdata_2017-06.csv',header=0,usecols=[1,3,4,9],engine='python'))

Данные с этого сайта предоставляются желтым такси с января по июнь 2017 года. http://www.nyc.gov/html/tlc/html/about/trip_record_data.shtml

Вот несколько примеров данных в файле CSV

1 Ответ

0 голосов
/ 05 октября 2018

Почему вы используете как pd.DataFrame, так и pd.read_csv?pd.read_csv уже прочитает ваш csv-файл и поместит его в DataFrame Pandas.Нет смысла также использовать pd.DataFrame.

green_taxi1 = pd.read_csv('<filename>', header=0, usecols=[1,3,4,9], engine='python')

Кроме того, указание типа данных столбцов может помочь в скорости и использовании памяти.Проверьте параметр dtype в pd.read_csv.Что-то вроде:

green_taxi1 = pd.read_csv('<filename>', header=0, usecols=[1,3,4,9], dtype={'tpep_pickup' : datetime, 'passenger_count': int, 'trip_distance' : float, 'DOLocationID': int}, engine='python')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...