【问题标题】:Python: convert DAT files to XLSPython:将 DAT 文件转换为 XLS
【发布时间】:2018-03-24 18:13:58
【问题描述】:

我有一堆 DAT 文件需要使用 Python 转换为 XLS 文件。我应该使用 CSV 库来执行此操作还是有更好的方法?

【问题讨论】:

  • 所有 DAT 文件的格式都相似吗?如果是,您能给我们看一个示例吗?
  • 我不太确定,但我确实认为它们都很相似。如果我能用一个简单的脚本转换至少 80% 的文件,我会很高兴。

标签: python csv converter xls


【解决方案1】:

我会使用熊猫。

import pandas as pd
df = pd.read_table('DATA.DAT')
df.to_excel('DATA.xlsx')

当然,您可以设置一个循环来遍历所有文件。可能是这样的

import glob
import os
os.chdir("C:\\FILEPATH\\")
for file in glob.glob("*.DAT"):
     #What file is being converted
     print file 
     df = pd.read_table(file)
     file1 = file.replace('DAT','xlsx')
     df.to_excel(file1)

【讨论】:

  • 我不断收到错误消息,提示我缺少 openpyxl 模块。我尝试导入它,但仍然得到同样的错误。
  • 你运行的是什么版本的熊猫?我认为 .to_excel 在 v20 中? stackoverflow.com/questions/37954195/upgrade-version-of-pandas 如果您运行的是低于 20 的版本。
  • 不确定如何检查版本,我试过pandas -version,但没有运气。我跑了pip3 install --upgrade pandas,它把numpy更新到了1.13.3版;但是,我仍然收到相同的“未找到模块”错误
  • 啊,愚蠢的我,我没有安装它。现在可以了!非常感谢蒂姆!
  • 太棒了!很高兴听到它:) 如果你喜欢它,你能接受答案吗?谢谢!
【解决方案2】:
writer = pd.ExcelWriter('pandas_example.dat',
                        engine='xlsxwriter',
                        options={'strings_to_urls': False})

或者你可以使用:

pd.to_excel('example.xlsx')

【讨论】:

    猜你喜欢
    • 2020-12-30
    • 1970-01-01
    • 1970-01-01
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-11
    相关资源
    最近更新 更多