当前位置: 首页 > 面试题库 >

Python Pandas,将DataFrame写入固定宽度文件(to_fwf?)

谭高峯
2023-03-14
问题内容

我知道熊猫有read_fwf,但是有类似的东西DataFrame.to_fwf吗?我正在寻找对字段宽度,数值精度和字符串对齐的支持。似乎DataFrame.to_csv没有做到这一点。
numpy.savetxt可以,但是我不想做:

numpy.savetxt('myfile.txt', mydataframe.to_records(), fmt='some format')

那似乎是错误的。非常感谢您的想法。


问题答案:

除非有人在熊猫中实现此功能,否则您可以使用制表包:

import pandas as pd
from tabulate import tabulate

def to_fwf(df, fname):
    content = tabulate(df.values.tolist(), list(df.columns), tablefmt="plain")
    open(fname, "w").write(content)

pd.DataFrame.to_fwf = to_fwf


 类似资料:
  • 问题内容: 我们有以下格式的记录: 宽度是固定的,我们需要将其导入SQL。我们尝试了批量导入,但由于未将’,’或’\ t’分开,因此无法正常工作。它在文本文件中由各个长度的各个空格分隔开,这就是我们的难题所在。 有关如何处理此问题的任何建议?谢谢! 问题答案: 当您对SQL感到比导入工具更熟悉时,可以将文件批量导入到临时表中的单个VARCHAR(255)列中。然后使用SQL处理所有记录并将其转换为

  • 问题内容: 我是Java Swing的新手,对下一个代码感到困惑。 我的目标是制作带有 2个JTextPane的 垂直可滚动面板 。具有父面板固定宽度70%的第一个JTextPane和具有固定宽度30%的第二个JTextPane。因为这两个JTextPane具有固定的宽度,所以它们只能在垂直方向上扩展更多文本。 我使用此解决方案,因为我只想为此2个JTextPane使用一个滚动条。 我的初始化代码

  • 我是Java Swing的新手,我对下一个代码感到困惑。 null

  • 问题内容: 我有两个div容器。 虽然其中一个需要为特定宽度,但我需要对其进行调整,以便另一个div占用其余空间。有什么办法可以做到吗? 问题答案: HTML: CSS: 您也可以使用这样做,这通常是一种更好的方法:如何将输入元素与其标签放在同一行?

  • 问题内容: 我有一个pandas数据框,我想将其写入CSV文件。我正在使用以下方法: 并得到错误: 有什么方法可以轻松解决此问题(即我的数据框中有Unicode字符)吗?有没有一种方法可以使用例如“ to-tab”方法(我认为不存在)写入制表符分隔文件而不是CSV? 问题答案: 要用制表符分隔,可以使用参数: 要使用特定的编码(例如),请使用参数:

  • 问题内容: 我从供应商那里得到了一个文件,每行有115个固定宽度的字段。如何将文件解析为115个字段,以便可以在代码中使用它们? 我首先想到的是只是为了让常数为每场像和使用。这看起来很丑,所以我很好奇这样做的更好方法。谷歌搜索打开的两个图书馆似乎都没有更好的选择。 问题答案: 我将使用像flatworm这样的平面文件解析器,而不是重新发明轮子:它具有简洁的API,易于使用,具有不错的错误处理能力和