Как установить значения nan/inf в Dato SFrames
Я пытаюсь установить в столбце большого фрейма данных пару значений nan/inf в одном из столбцов.
Я пробовал, например, что-то вроде этого.
df = df[df['a'] == 'NaN']
Или же
df = df[df['a'] == 'Inf']
Как я могу ссылаться на эти типы значений в столбце?
2 ответа
Решение
NaN - это особая ценность. Он не равен ни чему-либо, даже самому себе. Вот один из способов фильтрации по NaN:
import math
df = df[df['a'].apply(lambda x: math.isnan(x))]
Inf немного проще:
df = df[df['a'] == float('inf')]
Вы знаете, что это словарь, поэтому вы не можете использовать понимание, но вы можете повторить:
subset = {}
for d in df:
if d['a']=='Nan':
subset.update(d)
print subset