Мой вопрос очень похож на на этот, но мне нужно преобразовать весь весь фрейм данных, а не просто серию. Функция to_numeric
работает только по одной серии за раз и не является хорошей заменой устаревшей команде convert_objects
. Есть ли способ получить похожие результаты в команде convert_objects(convert_numeric=True)
в новой версии pandas?
Спасибо Майку Мюллеру за ваш пример. df.apply(pd.to_numeric)
работает очень хорошо, если значения могут быть преобразованы в целые числа. Что делать, если в моем кадре данных были строки, которые не могли быть преобразованы в целые числа?
Пример:
df = pd.DataFrame({'ints': ['3', '5'], 'Words': ['Kobe', 'Bryant']})
df.dtypes
Out[59]:
Words object
ints object
dtype: object
Затем я мог запустить устаревшую функцию и получить:
df = df.convert_objects(convert_numeric=True)
df.dtypes
Out[60]:
Words object
ints int64
dtype: object
Выполнение команды apply
дает мне ошибки, даже при попытке и исключении обработки.