2

我有一个数据框,每一列的格式都不同。我需要将其导出为 csv 或 dat 文件。但收到以下错误消息:

AttributeError:“Styler”对象没有属性“to_csv”

如何解决这个问题?

import pandas as pd
import datetime

def time_formatter(data):
    return datetime.datetime.strptime(data, "%Y/%m/%d").date().strftime('%Y%m%d')

df = pd.DataFrame({'a':[1,2,3], 'b':['2017/01/01', '2017/01/02','2016/12/31'], 'c':['aaa', 'bbb', 'ccc'], 'd':[4,5,6]})

formatter = {'a':'{:4.2f}', 'b': time_formatter, 'd':'{:8.2f}'}

df = df.style.format(formatter)

df.to_csv('aaa.csv')
4

2 回答 2

2

嗯,这是因为 CSV 是纯文本格式,并且这些文件不包含样式(格式)信息。这就是为什么你得到AttributeError: 'Styler' object has no attribute 'to_csv'. 您需要将其保存为excel 文件以使用不同的样式。

于 2019-05-16T07:06:34.610 回答
1

我也面临同样的问题,它通过流动解决了这个
At first import

pip install openpyxl

然后将您的文件另存为

df.to_excel("output.xlsx")
于 2020-09-11T15:15:06.780 回答