在Jupyter中使用熊猫读取文件太慢

时间:2018-10-05 15:38:54

标签: python pandas

我有6个800M的csv文件,但是在jupyter中,我花了数十分钟的时间才用熊猫读取6个csv文件。有什么办法可以提高阅读速度?它具有十几列和超过5000万行。

    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年1月至2017年6月黄色出租车网站。 http://www.nyc.gov/html/tlc/html/about/trip_record_data.shtml

以下是csv文件中数据的一些示例

1 个答案:

答案 0 :(得分:0)

为什么同时使用pd.DataFrame和pd.read_csv? pd.read_csv将已经读取您的csv文件并将其放入Pandas DataFrame中。也没有必要使用pd.DataFrame。

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

此外,指定列的数据类型可能有助于速度和内存使用。签出pd.read_csv的d​​type选项。像这样:

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')