csv to dataframe robust to empty csv files