У меня есть следующее df:
df
Process Commodity Direction ratio ratio-min
0 Coal plant Coal In 1.00 NaN
1 Coal plant Elec Out 0.40 NaN
2 Coal plant CO2 Out 0.30 NaN
3 Lignite plant Lignite In 1.00 NaN
4 Lignite plant Elec Out 0.40 NaN
5 Lignite plant CO2 Out 0.40 NaN
6 Gas plant Gas In 1.00 NaN
7 Gas plant Elec Out 0.60 NaN
8 Gas plant CO2 Out 0.20 NaN
9 Biomass plant Biomass In 1.00 NaN
10 Biomass plant Elec Out 0.35 NaN
11 Biomass plant CO2 Out 0.00 NaN
12 Wind park Wind In 1.00 NaN
13 Wind park Elec Out 1.00 NaN
14 Hydro plant Hydro In 1.00 NaN
15 Hydro plant Elec Out 1.00 NaN
16 Photovoltaics Solar In 1.00 NaN
17 Photovoltaics Elec Out 1.00 NaN
Как видите, ratio
значения являются плавающими числами.
Я пытаюсь отправить этот кадр данных в банк данных с помощью sqlalchemy.
Здесь я настраиваю таблицу:
import sqlalchemy as sa
table = sa.Table(table_name,
metadata,
sa.Column('index', sa.Integer, primary_key=True, autoincrement=True, nullable=False),
sa.Column('Process', sa.VARCHAR(50)),
sa.Column('Commodity', sa.VARCHAR(50)),
sa.Column('Direction', sa.VARCHAR(50)),
sa.Column('ratio', sa.Float(10)),
sa.Column('ratio-min', sa.Float(10)),
schema=schema_name)
Затем я отправляю таблицу в банк данных через: df.to_sql(table_name, engine, schema=schema_name, if_exists='replace')
Проблема в том, что я проверяю банк данных все значенияratio
как-то округлено.И вот что я получаю из банка данных (это тоже те же округленные значения в банке данных)
Process Commodity Direction ratio ratio-min
0 Coal plant Coal In 1.0 None
1 Coal plant Elec Out 0.0 None
2 Coal plant CO2 Out 0.0 None
3 Lignite plant Lignite In 1.0 None
4 Lignite plant Elec Out 0.0 None
5 Lignite plant CO2 Out 0.0 None
6 Gas plant Gas In 1.0 None
7 Gas plant Elec Out 1.0 None
8 Gas plant CO2 Out 0.0 None
9 Biomass plant Biomass In 1.0 None
10 Biomass plant Elec Out 0.0 None
11 Biomass plant CO2 Out 0.0 None
12 Wind park Wind In 1.0 None
13 Wind park Elec Out 1.0 None
14 Hydro plant Hydro In 1.0 None
15 Hydro plant Elec Out 1.0 None
16 Photovoltaics Solar In 1.0 None
17 Photovoltaics Elec Out 1.0 None
Как бы я запретил to_sql
округлять мои ratio
значения?