Запись фрейма данных pandas в таблицу базы данных Dynamo с неповрежденными типами данных

#python #pandas #amazon-web-services #amazon-dynamodb

#python #pandas #amazon-веб-сервисы #amazon-dynamodb

Вопрос:

У меня есть фрейм данных Pandas, который выглядит следующим образом:

 A      B     C
Yes   25     35
No    65     54
Yes   53     98  

В этом фрейме данных:

Столбец A имеет тип данных — String

Столбец B имеет тип данных — Float64

Столбец C имеет тип данных — Float64

Я хочу загрузить этот фрейм данных в таблицу Dynamo DB таким образом, чтобы мне не нужно было преобразовывать все значения в виде строк, но сохранять строки в виде строк и преобразовывать float64 в число или десятичное число (что приемлемо для Dynamo DB).

До сих пор я использовал этот код для преобразования всех значений в строку (df — фрейм данных), прежде чем записывать его в таблицу базы данных dynamo :

 

for i in df.columns:
    
        print(i)
        print(df[i].dtypes)
        
        datatype = df[i].dtype
        df = df.fillna(0)
        if datatype == 'float64':
            print('yes')
            df[i] = df[i].astype(int)

  

Как я могу добиться желаемого результата? Пожалуйста, предложите.

Спасибо

Комментарии:

1. В ваших столбцах не будет NaNs float64 ?

2. Привет, я думаю, что я бы обработал значения nan с помощью следующей команды: df1 = df1.replace(np.nan, » «, регулярное выражение = True)

3. Таким образом, NaNs wunt будет проблемой