Есть ли способ проанализировать данные из CSV перед загрузкой в RAM? В настоящее время я загружаю все данные, объединяю их, а затем выбираю нужные мне строки. Было бы быстрее выбрать мои строки для каждого файла перед объединением?
Вот мой код для загрузки df:
import pandas as pd
import time
from multiprocessing import Pool
def my_read_csv(filename):
return pd.read_csv(filename)
def load_csv():
path = *my path**
listOfFiles = glob.glob(os.path.join(path, "*_T100D_*.csv"))
print('Beginning to combine df')
print('...working...')
start_time = time.time()
with Pool(processes=8) as pool:
df_list = pool.map(my_read_csv, listOfFiles)
df = pd.concat(df_list, ignore_index=True, sort=True)
print("Pooled process took", time.time() - start_time, " seconds to run")
return df
В df есть два столбца: YEAR
и ORIGIN
. Как я могу разобрать его так, чтобы в df считывались только df.YEAR >= 2004
и df.isin(['LAX', 'JFK'])
?