Python 3.x 将数据框写入excel时出现错误消息

Python 3.x 将数据框写入excel时出现错误消息,python-3.x,pandas,pandas.excelwriter,Python 3.x,Pandas,Pandas.excelwriter,我正在将pkl文件加载到数据框中,并希望使用pandas的Excelwriter将其保存到excel。将pkl文件加载到DF工作正常,将框架写入excel会引发以下错误: ValueError(“无法将{0!r}转换为Excel”。格式(值) 我不知道怎么了 我在一台计算机上安装了anaconda with python 3.7,代码运行良好,没有问题。但是,在另一台计算机上(使用python 3.7和新安装的pandas and pickle),它失败了……非常感谢您的帮助 pkl文件是一个对

我正在将pkl文件加载到数据框中,并希望使用pandas的Excelwriter将其保存到excel。将pkl文件加载到DF工作正常,将框架写入excel会引发以下错误:

ValueError(“无法将{0!r}转换为Excel”。格式(值)

我不知道怎么了

我在一台计算机上安装了anaconda with python 3.7,代码运行良好,没有问题。但是,在另一台计算机上(使用python 3.7和新安装的pandas and pickle),它失败了……非常感谢您的帮助

pkl文件是一个对其中的学术文件进行了排序的文件,所以没有什么令人兴奋的

import pickle
import pandas as pd
from pandas import ExcelWriter

def open_pickle():
    savename = 'neuro_10_neuron[TIAB]_19-02-19'
    try:
        with open(savename + '.pkl', 'rb') as f:
            holder = pickle.load(f)
    except FileNotFoundError:
        print('Cannot find it!')

    framed =  pd.DataFrame.from_dict(holder)

    writer = ExcelWriter(savename + '.xlsx')
    framed.to_excel(writer)
    writer.save()

open_pickle()
提前谢谢

下面你可以看到整个错误信息的图片。也许这会为我指明一个方向。。。

对我来说,安装xlsxwriter模块后对代码的修改解决了这个问题。代码现在看起来如下:

import pickle
import pandas as pd
from pandas import ExcelWriter


def open_pickle():
    savename = 'neuro_10_neuron[TIAB] AND 2018[PDAT]_01-03-19'
    try:
        with open(savename + '.pkl', 'rb') as f:
            holder = pickle.load(f)
    except FileNotFoundError:
        print('Cannot find it!')

    framed =  pd.DataFrame.from_dict(holder)

    writer = ExcelWriter(savename + '.xlsx', engine='xlsxwriter')
    framed.to_excel(writer)
    writer.save()

    return(framed)

a= open_pickle()
如果有人遇到这样的事情,希望这能有所帮助。
干杯

好吧,对我来说,安装xlsxwriter模块后对代码的修改解决了问题。代码现在看起来如下:

import pickle
import pandas as pd
from pandas import ExcelWriter


def open_pickle():
    savename = 'neuro_10_neuron[TIAB] AND 2018[PDAT]_01-03-19'
    try:
        with open(savename + '.pkl', 'rb') as f:
            holder = pickle.load(f)
    except FileNotFoundError:
        print('Cannot find it!')

    framed =  pd.DataFrame.from_dict(holder)

    writer = ExcelWriter(savename + '.xlsx', engine='xlsxwriter')
    framed.to_excel(writer)
    writer.save()

    return(framed)

a= open_pickle()
如果有人遇到这样的事情,希望这能有所帮助。 干杯