Вывод рассчитанной статистики в CSV-файл с использованием csv, writer - PullRequest
0 голосов
/ 01 февраля 2020
mode_series = df['Price'].mode()
with open("stats1.csv","w",newline='') as out:
    writer = csv.writer(out,delimiter="\n")
    writer.writerow(str(round(df['Price'].mean(),2)))
    writer.writerow(str(round(df['Price'].median(),2)))
    for each in mode_series:
        writer.writerow(str(each))

Я пытаюсь вывести среднее & медиану (до 2 десятичных знаков) в строках 1,2 и режимы в следующих строках в CSV-файле.

Ожидаемый вывод:

923.19
950.20
900
900

Вывод кода:

9,2,3,.,1,9
9,5,0,.,2,0
9,0,0
9,0,0

Пожалуйста, помогите, как это исправить? Я понимаю, что проблема связана с разделителем, но я могу оставить пустой разделитель, и строка записывается как char за char. Если я удаляю строковое преобразование в

writer.writerow(str(round(df['Price'].mean(),2)))
writer.writerow(str(round(df['Price'].median(),2)))

, тогда выдается другая ошибка Error: iterable expected, not float.

...