TransWikia.com

Сохранение файла в csv формат

Stack Overflow на русском Asked by user388794 on December 1, 2020

имеется csv файл такого формата:введите сюда описание изображения

Загружаю его, работаю с ним и пытаюсь его сохранить с помощью pandas в формате с разделенной запятой:

Загрузка:
df1 = pd.read_csv('../input/FILE.csv', delimiter=';')

Сохранение: df1.to_csv('FILE.csv', decimal='.', index=True)

Хочу получить дробные числа с точкой и значения через запятую, по первой строчке это было бы:

0,,0,,,,0.0156,25.49019623,64,100,801,7.849999905,22,-0.0078,,SmoothCondition,LowCongestionCondition,0

Получаю 0,,0,,,,"0,0156","25,49019623",64,100,801,"7,849999905",22,"-0,0078",,SmoothCondition,LowCongestionCondition,0

Как избавиться от кавычек и вместо запятой определить точку?

One Answer

Похоже в исходном CSV файле использовалась , в качестве десятичного разделителя. По умолчанию функция pd.read_csv(..., decimal='.') использует точку в качестве десятичного разделителя, поэтому при парсинге вещественных чисел с запятой в качестве десятичного разделителя, ячейка "0,0156" будет прочитана как строка.

Для решения данной проблемы следует указать явно decimal=',' при чтении файла:

df1 = pd.read_csv('../input/FILE.csv', delimiter=';', decimal=',')

Correct answer by MaxU on December 1, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP