def merge(object_ids): """Merge a number of sorted dataframes into a single sorted dataframe.""" dfs = get_dfs(object_ids) # In order to use our multimerge code, we have to convert the arrays from # the Fortran format to the C format. arrays = [np.ascontiguousarray(df.as_matrix()) for df in dfs] for a in arrays: assert a.dtype == np.float64 assert not np.isfortran(a) # Filter out empty arrays. arrays = [a for a in arrays if a.shape[0] > 0] if len(arrays) == 0: return None resulting_array = multimerge.multimerge2d(*arrays) merged_df2 = pd.DataFrame(resulting_array, columns=column_names) return put_df(merged_df2)