- См. Ответ rowabor float_precision для следствия за ноль. Используйте либо pandas.to_excel или polars.write_csv вместо этого. Polars.write_excel Двигатель по умолчанию: xlsxwriter еще не полностью зрел.
Код: Выделить всё
polars as pl< /code>
polars.selectors as sc
В моем текущем проекте я импортировал свои данные через pl.read_excel ('abc.xlsx', engine = 'openpyxl') вместо двигателя по умолчанию, так как он дал мне ошибку на столбце, что он не может обнаружить dtype.
my into your wyly into datepes и in in/in on/in on/in in/in in/in in in/in in on/in in in/in in in/in in. Float64 . Перед экспортом моих данных в Workbook .xlsx Excel мне пришлось использовать df = df.with_columns (sc.by_dtype (pl.float64) .round (2)) , чтобы округлить все Float64 столбцы до 2 десятимальных мест. После этого я экспортировал свои данные, используя pl.write_excel ('abc_v2.xlsx') .
(1) Вот первая проблема: Float64 столбцы, показанные в Python, имеют 2 десятичных мест, но дополнительное Zero добавляется к обратному значениям в исходном файле Excel. из 2 десятичных мест без ноль во всех столбцах Float64 .
(2) Моя вторая задача: оба int64 и float64 столбцы, показанные в Python, не имеют тысячи сепараторов, но в тысячах департамента вводится не тысячи данных. Int64 и float64 столбцы. У меня нет такой проблемы с pandas.to_excel () < /code>. < /P>
--- Редактировать ---
добавил мои коды ниже для вашего удобства для тестирования. «Sum_per_group», «сумма» и «Общая сумма» состоят из чисел с плавающей запятой с 2 десятичными местами (
Код: Выделить всё
Float64
Код: Выделить всё
Int64
import polars as pl
import polars.selectors as sc
df = pl.read_excel('../Documents/abc.xlsx', engine='openpyxl')
df = df.with_columns(sum_per_group = pl.col('Amount').sum().over('ID').sort_by('ID'))
df = df.with_columns(sc.by_dtype(pl.Float64).round(2))
df = df.with_columns([
pl.when(pl.col('sum_per_group') != pl.col('Total Amount'))
.then(pl.lit('No'))
.otherwise(pl.lit('Yes'))
.alias('Flag')
])
df.write_excel('abc_v2.xlsx')
< /code>
---EDIT2---
Added a picture of my OS regional settings

Подробнее здесь: https://stackoverflow.com/questions/797 ... -remove-tr