Как сгенерировать ошибку типа перед применением слияния панд - PullRequest
0 голосов
/ 19 ноября 2018

Это вопрос запроса функции. Пожалуйста, дайте мне знать. Я единственный, кто решает подобные проблемы, Если да, помогите мне, как вы, ребята, избегаете этой ошибки, или я попрошу сделать эту функцию.

Одна из основных операций в пандах - merge. Как бы то ни было, при выполнении операции слияния, даже если данные одинаковы, но dtype отличается, они не сливаются. одна из моих частых ошибок в pd.merge, с которыми я столкнулся, была применение pd.merge без проверки их dtype . Мне интересно, есть ли способ pandas помочь мне узнать его dtype и поднять предупреждение пользователя , если dtype ключевого столбца не совпадает. В любом случае нет смысла применять операцию слияния, когда столбцы типа d не совпадают.

Пожалуйста, дайте мне знать, что вы, ребята, думаете об этой проблеме? или как элегантно решить эту проблему?

1 Ответ

0 голосов
/ 19 ноября 2018

Вы можете получить доступ к dtypes каждого столбца напрямую

if len(df1.columns) != len(df2.columns):
    raise ValueError('Column number mismatch')

for col1, col2 in zip(sorted(df1.columns), sorted(df2.columns)):
    if col1 != col2:
        raise ValueError('Column name mismatch')
    if df1[col1].dtype != df2[col2].dtype:
        raise ValueError('Column dtype mismatch')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...