Розширюючи згадане використання pandas.DataFrame.astype(<type>)
методу на @Ryan G , можна використовувати errors=ignore
аргумент лише для перетворення тих стовпців, які не створюють помилок, що помітно спрощує синтаксис. Очевидно, слід дотримуватися обережності при ігноруванні помилок, але для цього завдання це дуже зручно.
>>> df = pd.DataFrame(np.random.rand(3, 4), columns=list('ABCD'))
>>> df *= 10
>>> print(df)
... A B C D
... 0 2.16861 8.34139 1.83434 6.91706
... 1 5.85938 9.71712 5.53371 4.26542
... 2 0.50112 4.06725 1.99795 4.75698
>>> df['E'] = list('XYZ')
>>> df.astype(int, errors='ignore')
>>> print(df)
... A B C D E
... 0 2 8 1 6 X
... 1 5 9 5 4 Y
... 2 0 4 1 4 Z
З документів pandas.DataFrame.astype :
помилки: {'підвищити', 'ігнорувати'}, за замовчуванням 'підняти'
Контроль підвищення винятків щодо недійсних даних для наданого типу.
- підвищувати: дозволяти збільшувати винятки
- ignore: придушити винятки. При поверненні помилки вихідний об'єкт
Нове у версії 0.20.0.
df.col = df.col.astype(int)