У меня есть pandas dataframe
, который имеет много столбцов. Эти столбцы могут иметь 3 значения - True, False и NaN. Я заменяю NaN
на строку missing
. Значения выборки для одного из моих столбцов выглядит следующим образом:«Недопустимое сравнение типов» в коде
ConceptTemp.ix[:,1].values
в результате:
array([ True, False, False, False, True, True, True, True, False, True], dtype=bool)
Обратите внимание, что этот конкретный столбец не имел никакого NaN
, и поэтому не missing
строку.
Теперь я выполнить следующий код:
ConceptTemp.ix[:,1][ConceptTemp.ix[:,1] != 'missing'].values
Чтобы получить следующее исключение:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-47-0a0b76cf3ab5> in <module>()
----> 1 ConceptTemp.ix[:,1][ConceptTemp.ix[:,1] != 'missing'].values
E:\Anaconda2\lib\site-packages\pandas\core\ops.pyc in wrapper(self, other, axis)
724 other = np.asarray(other)
725
--> 726 res = na_op(values, other)
727 if isscalar(res):
728 raise TypeError('Could not compare %s type with Series'
E:\Anaconda2\lib\site-packages\pandas\core\ops.pyc in na_op(x, y)
680 result = getattr(x, name)(y)
681 if result is NotImplemented:
--> 682 raise TypeError("invalid type comparison")
683 except AttributeError:
684 result = op(x, y)
TypeError: invalid type comparison
ли кто-нибудь знает, как это исправить?
Любые указатели будут высоко оценены.
Распечатайте 'ConceptTemp.ix [:, 1] .values' и доложить. – piRSquared
Возможно, не совсем то, что вы ищете, но можете ли вы использовать 'isin'? 'ConceptTemp.ix [:, 0] [~ ConceptTemp.ix [:, 0] .isin (['missing'])]. Values' – johnchase
Я отредактировал комментарий, который вы можете использовать' '' для инвертирования выбора – johnchase