Я использую панды и импортировал два csv.Pandas to_csv экспорт дает неправильные значения в dataframe
df1 является
df2 является
Тип данных df2 является
Когда я делаю некоторые манипуляции на df1 и df2:
df3= pd.merge(df1, df2, how='left', on=['Origin City Code', 'DC'])
, а затем экспортировать его в CSV
df3.to_csv("test.CSV")
то сумма всех значений в колонке «Volume» НЕ соответствие с суммой значений под колонны оригинал df2. На самом деле сумма в df3 выходит больше. Я считаю, что проблема возникает из-за чисел с плавающей запятой. Но есть ли способ разрешить это? Я просмотрел следующие ссылки, но мой вопрос остается без ответа.
https://github.com/pydata/pandas/issues/2069
reading and writing csv in pandas changes cell values
Wrong decimal calculations with pandas
Вот файлы кода я использую: https://www.dropbox.com/s/kjpnhl7qtojes92/sample.rar?dl=0
У вас есть повтор '[ 'Origin City Code ',' DC '] 'строк в' df1'? Это приведет к повторению томов в объединенном DataFrame, объясняя большую сумму. – root
@root .. нет повторного значения в df1. Я проверил – Ajeet
Я не имею в виду повторы в целом, только в поле '['Origin City Code', 'DC']' subset, то есть 'df.duplicated (subset = ['Origin City Code', 'DC']) .any() '. Сколько стоит сумма? Можете ли вы представить воспроизводимый пример? Я не могу воспроизвести ошибку с данными, которые вы указали. – root