Я читаю два столбца csv файла, используя pandas readcsv(), а затем присваиваю значения словарю. Столбцы содержат строки чисел и букв. Иногда бывают случаи, когда ячейка пуста. На мой взгляд, значение, считанное для этой словарной записи, должно быть None, но вместо этого назначается nan. Разумеется, None более описывает пустую ячейку, поскольку она имеет нулевое значение, тогда как nan просто говорит, что прочитанное значение не является числом.
Насколько я понимаю, что разница между None и nan? Почему nan назначено вместо None?
Кроме того, мой словарь проверяет наличие пустых ячеек с помощью numpy.isnan():
for k, v in my_dict.iteritems():
    if np.isnan(v):
Но это дает мне ошибку, говоря, что я не могу использовать эту проверку для v. Я предполагаю, что это потому, что предполагается использовать переменную integer или float, а не строку. Если это так, как я могу проверить v для случая "пустой ячейки" /nan?