У меня (снова) проблема с обработкой фрейма данных в пандах.
Четыре столбца: Name
, Sample
, A1_TOP
, A2_TOP
.
Иногда в A1_TOP
или A2_TOP
у меня есть пробелы. Пробелы - это символы «-» или «0».
Я написал строку кода для удаления строк, содержащих пробелы формы таблицы.
a = мой фрейм данных.
Мой код:
a = a.loc[(a['A1_TOP'] != '-') | (a['A2_TOP'] != '-')]
a = a.loc[(a['A1_TOP'] != '0') | (a['A2_TOP'] != '0')]
Но когда я запускаю его, я не получаю ошибок. Результатом является то, что датафрейм все еще содержит пробелы. Вчера у меня были другие файлы для обработки, и эта часть кода работает нормально. Не сегодня.
Например, у меня есть разрыв в первой строке во фрейме данных:
Name Sample A1_TOP A2_TOP
Adam Smith - B
И этот ряд следует удалить. Но это не так. type(df['A1_TOP][0]) = str
так что это не проблема с типом.
Может кто-нибудь сказать мне, что не так с этим кодом?
EDIT:
Если я разделю команду так:
a = a.loc[a['A1_TOP'] != '-']
a = a.loc[a['A2_TOP'] != '-']
Работает ... а почему нет?