Save some memory when constructing DataFrame