TypeError: аргумент float () должен быть строкой или числом, а не 'NaTType' - PullRequest
0 голосов
/ 20 сентября 2018

У меня есть функция, которая загружает кадр данных pandas в мою базу данных.

Однако многие значения в df являются значениями с плавающей точкой.

Первоначально в фрейме данных были несовместимые типы данных, но я изменил их на правильные типы данных, за исключением значения, от которого я хочу получить значение с плавающей точкой.

Есть некоторые даты, для которых нет значения, но mysql дает мне это:

1947-01-01 = 1239 <- предполагается, что это float, а 1947-01-01 = <br>-9.22337e18 должен быть нулевым

TypeError: аргумент float () должен быть строкой или числом, а не 'NaTType'

for lines in countryDict[country_index]:

                      lines.splitlines()
                      fredder = fred.get_series_all_releases(lines)
                      pd.DataFrame(fredder)

                      fredder['date'] = fredder.date.astype('datetime64')
                      fredder['realtime_start'] = fredder.realtime_start.astype('datetime64')
                      fredder['value'] = fredder.value.astype('float64')

                      fredder.to_sql(
                                name = '{}'.format(lines),
                                con = engine,
                                index = False,
                                if_exists = 'append')



connection.close()

1 Ответ

0 голосов
/ 20 сентября 2018

Попробуйте использовать pd.to_datetime(fredder['Date'])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...