Как я могу объединить или объединить несколько (> 2) DataFrame
объектов, заставляя точно соответствовать измерениям массива, то есть нет потери данных, нет заполнения данных, и внутреннее соединение и внешнее соединение дадут одинаковые результаты, таким образом подражая как numpy.concatenate
работает? Я читал о pandas слиянии и pandas объединении , но не смог найти этот вариант использования адресованным. Из моего кода я знаю, что все мои входные данные DataFrame
должны иметь одинаковое количество строк и уникальных столбцов, и я бы хотел исключение, если это не так. Конечно, я мог бы вручную проверить это и выдвинуть свое собственное исключение, но может показаться, что это должно быть довольно распространенным требованием (я ожидаю, что этот вопрос будет дубликатом, но я не смог найти сообщение с ответом). Может ли pandas сделать это для меня?
df1 = pd.DataFrame(np.empty(shape=(5, 2)), columns=["A", "B"])
df2 = pd.DataFrame(np.empty(shape=(3, 2)), columns=["C", "D"])
df = pd.concat([df1, df2], axis=1, join="outer") # fills with NaN
df = pd.concat([df1, df2], axis=1, join="inner") # data loss
np.concatenate([df1.values, df2.values], axis=1) # ValueError, desired behaviour (but no longer a DataFrame)
Я желаю ValueError
или другого исключения для этой ситуации. Может ли pandas бросить это для меня или мне решать?