Я пытаюсь вставить значения NaN в свою базу данных, используя python / SQLAlchemy.
Для объекта SQLAlchemy установлено значение 'nan', но когда я добавляю его в сеанс и пытаюсь зафиксировать, я четко см., что это заменено 'None' (который в этом случае выдает ошибку, потому что есть ограничение not-null, поэтому я вижу SQL утверждение в сообщении об ошибке).
Насколько я понимаю, psycopg2 теперь поддерживает NaN-значения: https://github.com/sqlalchemy/sqlalchemy/issues/977
Если я выполняю вставку непосредственно в базу данных или посредством выполнения SQL - утверждение как в:
cursor.execute("""INSERT INTO mytable (value, some_foreign_key) VALUES (%s, %s)""", (np.nan, 42))
Работает нормально.