Как исправить столбец с числовыми значениями, который воспринимается как строковое поле из-за пустых строк в кадре данныPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как исправить столбец с числовыми значениями, который воспринимается как строковое поле из-за пустых строк в кадре данны

Сообщение Anonymous »

У меня есть файл df с некоторыми столбцами, которые должны быть числовыми полями. Однако в этих столбцах существуют пустые строки, что приводит к тому, что их тип данных неправильно назначается как «объект». Как удалить эти пустые строки и преобразовать столбец в правильный тип данных (int/float)?
Предположим, столбец A выглядит так:

Код: Выделить всё

2
1
0
''
NULL
Name: A, dtype: object
Ожидаемый столбец A должен быть

Код: Выделить всё

2
1
0
NULL
NULL
Name: A, dtype: int
Я попробовал приведенное ниже, но кажется, что тип данных не изменился, потенциально все числа по-прежнему считаются строками.

Код: Выделить всё

print(df[col].dtypes)
df[col].replace(r'^\s*$', np.nan, regex=True, inplace=True)
print(df[col].dtypes)
Выход:

Код: Выделить всё

object
object
Я не хочу сначала использовать str.isnumeric() для скрытия типа данных, поскольку это повлияет на другие столбцы реальных строк. Есть ли лучший подход?

Подробнее здесь: https://stackoverflow.com/questions/786 ... because-of
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»