python - Pandas applymap内存错误

标签 python pandas xlwings

我正在尝试将日期时间的所有实例更改为字符串并将我的数据框导出到 Excel。数据帧可能有 20,000 - 50,000 个条目。这是我当前的代码:

wb = xw.Book('filelname.xlsx')
sht = wb.sheets['FNC']
data = wb.sheets['Data']
smdata = wb.sheets['Social']

df_sm_temp = sm_all

df_sm_temp['Date'] = df_sm_temp['Date'].apply(lambda x: str(x) if isinstance(x, datetime.time) else x)
df_sm_temp['Added'] = df_sm_temp['Added'].apply(lambda x: str(x) if isinstance(x, datetime.time) else x)
df_sm_temp['Updated'] = df_sm_temp['Updated'].apply(lambda x: str(x) if isinstance(x, datetime.time) else x)

 smdata.range('SM_ALL').value = df_sm_temp

当尝试运行此程序时,我收到内存错误。任何帮助将不胜感激!

这是数据集的一个小样本:https://www.sendspace.com/file/jxhmx2

谢谢

最佳答案

实际上你不需要转换数据本身,只需将datetime_formatxlsxwriter引擎结合使用即可:

演示:

writer = pd.ExcelWriter('/path/to/result.xlsx', engine='xlsxwriter', 
                        date_format='mm/dd/yyyy', datetime_format='mm/dd/yyyy')

df.to_excel(writer)

关于python - Pandas applymap内存错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50905695/

相关文章:

python - 用 pandas 读取 hdf5 数据集

python - Pandas :删除另一个系列时间索引的时间间隔内的所有行(即时间范围排除)

python - 使用 XLWINGS 刷新数据透视表

python - 将 Pandas 数据框转换为嵌套 JSON

python - 如何在 python 列表中查找重复的对?

python - 隐藏 xticks 标签每第 n 个标签或 Pandas 绘图上的值/使 x 轴可读

python - 比较两列过滤 Pandas 数据框

python - 使用 Python 和 xlwings 在 Excel 中查找事件/选定单元格的范围 - 续

python - 如何在 Windows 上使用 iPython Notebook 解决 pandas 的导入错误?

python - Numpy:将多列乘以一列