使用 Pandas 修改 Excel 文件,布局变化最小

2023-11-30

我已经读过Pandas 可以读取和修改单个 Excel 文件工作表(选项卡)而不修改文件的其余部分吗?但在这里我的问题是针对下文提到的布局的。

如何使用 Pandas 打开 Excel 文件,进行一些修改,然后将其保存回来:

  • (1) 不删除有一个Filter在第一行

    enter image description here

  • (2)不修改Excel中显示的列的“显示列宽”

  • (3) 不删除某些单元格中可能存在的公式

?

这是我尝试过的,这是一个简短的例子(实际上我用 Pandas 做了更多处理):

import pandas as pd

df = pd.read_excel('in.xlsx')
df['AB'] = df['A'].astype(str) + ' ' + df['B'].astype(str)  # create a new column from 2 others
del df['Date']                                              # delete columns
del df['Time']
df.to_excel('out.xlsx', index=False)

通过这段代码,Filter第一行的宽度被删除,显示的列宽被设置为默认值,这不是很方便(因为我们必须手动设置所有列的正确宽度)。


如果您使用的机器上安装了 Excel,那么我强烈建议您使用灵活的xlwingsAPI。这回答了你所有的问题。

假设我有一个名为demo.xlxs与我的程序位于同一目录中。

enter image description here

app.py

import xlwings as xw # pip install xlwings
import pandas as pd

wb = xw.Book('demo.xlsx')

enter image description here

这将创建一个启动 Excel 工作簿实例并打开 Excel 编辑器以允许您调用 Python 命令。

enter image description here


假设我们有以下数据框,我们想用它来替换 ID 和 Name 列:

    new_name
A   John_new
B  Adams_new
C     Mo_new
D  Safia_new

wb.sheets['Sheet1']['A1:B1'].value = df

enter image description here


最后,您可以保存并关闭。

wb.save()
wb.close()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Pandas 修改 Excel 文件,布局变化最小 的相关文章

随机推荐

  • Swift 2.2,包含方法不起作用

    包含方法无法正常工作 即使它与对象匹配 它也会给我错误的结果 我的代码如下 class Generic NSObject NSCoding var genericCode String var genericName String var
  • 为什么 PostgreSQL 适配器 psycopg2 在 Google App Engine dev_appserver.py 中失败?

    我想将 GAE 中的应用程序与 ElephantDB 连接起来 我想使用 lib psycopg2 但发现了一个问题 我在本地安装了该库来测试它并完美运行 然后我将该库安装在我的应用程序的 lib 文件夹中 就像我对其他库所做的很多次一样
  • 命名空间和类同名吗?

    我正在组织一个图书馆项目 并且有一个名为的中央管理器类Scenegraph以及位于 Scenegraph 命名空间中的一大堆其他类 我真正想要的是场景图MyLib Scenegraph和其他类别MyLib Scenegraph 但似乎唯一的
  • AngularJS UI-Router:在应用程序加载之前预加载 $http 数据

    我需要使用过 ui router 插件的 AngularJS 专家的帮助 有人可以提供一个在应用程序运行之前预加载 http 数据请求的 plunker 示例吗 我做了一些研究 但最接近的是这两个堆栈溢出 AngularJS 如何在应用程序
  • Java程序禁用SSL认证存在安全风险

    我们的团队会抓取网站以使我们的信息保持最新 我遇到了抓取HTTPS页面时的安全异常 问题在于 Java 在接受页面自签名证书时存在问题 我没有保留要接受的证书列表 将来可能很难维护 而是使用 neu242 提供的解决方法来禁用 SSL 证书
  • 在运行时将 C# 标签添加到表单

    我正在尝试用 C 制作一个简单的基于文本的游戏 我想实现这一点的方法是向表单添加标签 而不是使用命令提示符 我在将它们添加到屏幕时遇到一些问题 Visual Studio 给出了一个未指定的错误 只是说我有一个未处理的异常 你调用的对象是空
  • 如何去除抽屉上方的台阶

    我在用着DaisyUI and 顺风CSS 我正在使用一个drawer and steps div class drawer div
  • 在托管类中调用非托管函数时出现 C++/CLI System.AccessViolationException

    我在 C 中有一个本机回调函数 让我们这样说 void CallbackFunction void Do nothing 现在我有另一个本机函数 void SomeNativeFunction void m callback std tr1
  • 终止子进程时终止所有(孙)子进程

    我将直接进入 简短且具有描述性 C Windows API 我正在使用创建子进程CreateProcess运行外部 命令行 应用程序 我已经内置了一个超时 如果到那时子进程还没有返回正常执行 我希望强制终止该子进程 理想情况下 我希望该子进
  • 如何使用 ASP.NET 身份模型进行 WCF 服务授权和身份验证

    我正在开发一个 ASP NET 4 5 Web 应用程序 它使用 ASP NET 身份模型进行身份验证和授权 该 Web 应用程序还托管 WCF 服务并同时使用它 还有另一个基于 WPF 的应用程序将使用托管的 WCF 服务 以及作为客户端
  • 如何减少 YOLOv3 文件中的类数量?

    我正在使用 YOLOv3 来检测视频中的汽车 我下载了代码中使用的三个文件coco names yolov3 cfg and yolov3 weights它们针对 80 种不同类别的待检测物体进行了训练 该代码可以运行 但速度非常慢 每帧需
  • 如何使用 YouTube Android 播放器 API 播放 YouTube 直播?

    我已经成功使用 YouTubePlayer 播放 YouTube 视频 但是 当我尝试使用 YouTubePlayer 播放直播时 没有任何反应 API支持直播吗 如果是这样 我该怎么做 播放普通 YouTube 视频和直播视频没有区别 我
  • (psycopg2.DataError) 整数输入语法无效:从 csv 文件导入?

    我的csv文件中的数据是这样的 081299289X China Dolls Lisa See 2014 0345498127 Starter for Ten David Nicholls 2003 0061053716 Imajica C
  • python np.nan 和 '==' & 'is' [重复]

    这个问题在这里已经有答案了 当我检查 Python 操作数的相等性和同一性时 例如a b a我明白了 a b gt True a is b gt True 我明白了 那么 为什么我得到 np nan 的 diff 结果 a np nan b
  • IsDate 函数返回意外结果

    怎么会IsDate 13 50 回报True but IsDate 12 25 2010 回报False 我最近被这个小 功能 绊倒了 想提高人们对围绕该功能的一些问题的认识 IsDateVB 和 VBA 中的函数 简单的案例 正如你所期望
  • 从具有级别的列表构造一棵树

    我有一些数据 Pythonlist of dicts 看起来像 value A level 0 value B level 1 value C level 2 value D level 1 value E level 2 value F
  • Apache Poi:从 HSSF 转换为 SS?

    除了我制作工作簿的部分之外 我已将 HSSF 中的所有旧代码转换为 SS 旧代码 HSSFWorkbook wb new HSSFWorkbook new FileInputStream 文件 新的非工作代码 工作簿 wb2 新工作簿 新F
  • Django, sorl-缩略图裁剪图片头像

    伙计们 我想知道 sorl thumbnail 是否有任何选项可以从下到上裁剪 我有一个垃圾问题 在某些图片中 sorl thumbnail 正在裁剪图片中人物的头部 Thanks 我刚刚发布了新版本的 sorl thumbnail 3 2
  • Java中如何检查字符串中是否包含日期?

    如何检查字符串是否包含以下形式的日期 美国东部时间 2012 年 1 月 15 日星期日晚上 7 36 我正在处理的数据包含大量字符串 但我正在寻找的字符串类型包含 2 或 3 个单词的名称和日期 我正在检查日期来识别这些类型的字符串 我已
  • 使用 Pandas 修改 Excel 文件,布局变化最小

    我已经读过Pandas 可以读取和修改单个 Excel 文件工作表 选项卡 而不修改文件的其余部分吗 但在这里我的问题是针对下文提到的布局的 如何使用 Pandas 打开 Excel 文件 进行一些修改 然后将其保存回来 1 不删除有一个F