python写ecxel。多个条件对Excel中的数据进行筛选并处理

2023-10-30

在第很多行中,D列不空,C列不空,那么A列B列E列F列不空。D列空,C列不空,那么A列B列E列F列空

import pandas as pd


def process_data(filename):
    # 读取Excel文件
    df = pd.read_excel(filename)

    # 根据条件进行筛选并处理数据
    df.loc[(df['D'].notnull()) & (df['C'].notnull()), ['A', 'B', 'E', 'F']] = df.loc[(df['D'].notnull()) & (df['C'].notnull()), ['A', 'B', 'E', 'F']].fillna('')
    df.loc[(df['D'].isnull()) & (df['C'].notnull()), ['A', 'B', 'E', 'F']] = None

    # 保存处理后的DataFrame到Excel文件
    new_filename = 'result.xlsx'
    df.to_excel(new_filename, index=False)

    return new_filename


filename = 'your_file.xlsx'  # 请替换为实际的文件名
new_filename = process_data(filename)

请将A B C D E F 替换为实际中的列名,即列标题

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

python写ecxel。多个条件对Excel中的数据进行筛选并处理 的相关文章

随机推荐

  • Google 每天处理约 20000TB 的数据

    Google 热衷于处理全球的信息 每天 他们花费大量时间探索更好的信息整理技术 他们目前使用的技术为 MapReduce 这是一种可以对数据进行并发处理的软件架构 鉴于其简单性与处理大规模数据的能力 MapReduce 是 Google
  • SpringBoot+vue(MyBatis + Shiro + Jwt + Druid + Redis + ElementUI )快速开发框架

    Jeebase 项目介绍 Jeebase是一款前后端分离的开源开发框架 基于springboot vue vue element admin 开发 二期会整合react前端框架Ant Design React 在实际应用中已经使用这套框架开
  • 1188C语言实验——各位数字之和排序

    题目描述 给定n个正整数 根据各位数字之和从小到大进行排序 输入 输入数据有多组 每组数据占一行 每行的第一个数正整数n 表示整数个数 后面接n个正整数 当n为0时 不作任何处理 输入结束 输出 输出每组排序的结果 示例输入 2 1 2 3
  • Using Field in Searching(使用字段搜索)

    Task 1 Use the Fields sidebar to examine search results In the app navigation bar i e the bar towards the top of the bro
  • React 从零开始学习(九)—— 落子有悔

    到目前为止 demo 的操作是不能回退的 点击格子以后 想要记录历史的操作 就需要 使用 slice 函数为每一步创建 squares 数组的副本 同时把这个数组当作不可变对象 这样就可以把所有 squares 数组的历史版本都保存下来了
  • 四大作用域

    四大作用域解读 1 page指当前页面有效 在一个jsp页面里有效 代表当前的jsppageContext 提供了获取 其他8大隐式对象的方法域对象setAttribute String name Object value 2 reques
  • Android面试家常菜:Handler消息机制全家桶一把梭,看完这篇还不懂,请砍我

    前言 Handler可以说小伙伴们用的非常多了 可以说Handler是支撑整个Android系统运行的基础 本质上Android系统都是由事件驱动的 而处理事件的核心就在于Handler 接下来我们就从简单的使用 到源码分析让你彻彻底底明白
  • Python 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

    给定排序数组和目标值 如果找到目标 则返回索引 如果没有 请返回索引按顺序插入的索引 您可以假设数组中没有重复项 Example 1 Input 1 3 5 6 5 Output 2 Example 2 Input 1 3 5 6 2 Ou
  • Axure实现弹框周围遮罩效果

    每一次我都惊叹知识的浩瀚和多彩 在IT这个所做即所得的世界里 很容易获得成就感 当然也时时刻刻活在对大神的膜拜之中 就以这次的原型图制作来说 我们遇到了很多的问题 自己实现了很多功能 但是今天晚上大家对自己原型图的演示和分享之中 又让我感叹
  • 2022年全国大学生数学建模竞赛赛题B组解题参考+代码

    题目 获取题目方式 2022年全国大学生数学建模竞赛题目 代码思路获取方式 关注博主竞赛专栏 B 题 无人机遂行编队飞行中的纯方位无源定位 无人机集群在遂行编队飞行时 为避免外界干扰 应尽可能保持电磁静默 少向外发射电磁波信号 为保持编队队
  • VMware 使用U盘装系统

    第一步 首先要有U盘 把这个U盘制作成启动盘教程中使用的是大白菜 大白菜下载地址 第二步 打开你的VMware 新建一个虚拟盘机 第三步 选择稍后安装系统 第四步 选择你要安装的系统 第五步 是你给虚拟机命名和选择安装路径最好不要放在C盘里
  • C++第六章:选择结构的程序设计

    一 选择语句 1 if语句 if语句的作用是计算给定的表达式 根据判断结果选择执行相应的语句 形式1 if 表达式 语句1 例 int a 5 b 1 t if a gt b t a a b b t 形式2 if 表达式 语句1 else
  • Ubuntu-22.04通过RDP协议连接远程桌面

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 RDP是什么 二 配置 1 打开远程桌面功能 2 验证服务 3 防火墙配置 4 测试效果 总结 前言 由于一些特殊需要 我需要通过远程桌面连接到Ubunt
  • 0-1背包问题和完全背包问题

    先总体介绍一下0 1背包和完全背包的区别 主要是01背包和完全背包 背包九讲里面的其他背包问题 都是竞赛级别的 leetcode上面没有 01背包就是 背包存在一个最大容量V 每个物品有两个参数 体积w和价值v 目的是在不超过背包最大容量的
  • 利用 mysql.help_topic 生成序列

    有时我们在生成一些时间轴类似的数据时 要求数据库不管有没有指定天的数据 都要生成该时间节点 可用mysql help topic来解决生此类问题 通过序列和日期函数相结合来满足我们的业务需求 mysql 生成序列 利用 mysql help
  • spark学习2:spark运行基本架构

    各个名词介绍 1 RDD 弹性分布式数据集 2 DAG 有向无环图 反应各RDD之间关系 即把第一个RDD和最后一个RDD 串联起来的关系图 根据DAG 能够找到每个RDD的父RDD 3 executor executor是 驻守在各个工作
  • 三维重建可以考虑光线跟踪的方法

    如题
  • LeetCode 之 剑指 Offer 12. 矩阵中的路径(Java)

    文章目录 LeetCode 之 剑指 Offer 12 矩阵中的路径 Java 一 题目 二 解题思路 三 代码 LeetCode 之 剑指 Offer 12 矩阵中的路径 Java 一 题目 剑指 Offer 12 矩阵中的路径 给定一个
  • Nacos搭建集群

    复制三份Nacos服务端文件 配置相同的数据库 参考前面nacos上线文档 修改每一个的application properties文件内的 server port 然后在每个conf文件夹内新增 cluster conf文件 文件内容为
  • python写ecxel。多个条件对Excel中的数据进行筛选并处理

    在第很多行中 D列不空 C列不空 那么A列B列E列F列不空 D列空 C列不空 那么A列B列E列F列空 import pandas as pd def process data filename 读取Excel文件 df pd read ex