用户权限数据转换为用户组列表(3/3) - Excel PY公式

2023-11-20

最近Excel圈里的大事情就是微软把PY塞进了Excel单元格,可以作为公式使用,轻松用PY做数据分析。系好安全带,老司机带你玩一把。

请添加图片描述

实例需求:如下是AD用户的列表,每个用户拥有该应用程序的只读或读写权限,现在需要创建新的AD用户组,并根据用户当前的权限,将这些用户添加到相应的组中。

当前数据集:

Safe UserName Read permissions RW permissions
Safe1 User1 Yes Yes
Safe1 User2 Yes No
Safe1 User3 Yes Yes
Safe1 User4 Yes No
Safe2 User1 Yes Yes
Safe2 User2 Yes No
Safe2 User3 Yes Yes
Safe2 User4 Yes No

整理后输出数据集:

Safe AD Group Userlist
Safe1 Safe1-ReadGroup User1,User2,User3,User4
Safe1 Safe1-RWGroup User1,User3
Safe2 Safe2-ReadGroup User1,User2,User3,User4
Safe2 Safe2-RWGroup User1,User3
df=xl("Table1[#全部]", headers=True)
rw_df = df[df['RW permissions'] == 'Yes'].drop(columns=['RW permissions'])
grp_rw = rw_df.groupby(['Safe'])['UserName'].apply(','.join).reset_index()
grp_rw['AD Group'] = grp_rw['Safe'] + '-RWGroup'
r_df = df[df['Read permissions'] == 'Yes'].drop(columns=['Read permissions'])
grp_r = r_df.groupby(['Safe'])['UserName'].apply(','.join).reset_index()
grp_r['AD Group'] = grp_r['Safe'] + '-ReadGroup'
df_output = pd.concat([grp_r, grp_rw], axis=0).rename(columns={'UserName': 'UserList'})[['Safe', 'AD Group', 'UserList']]

【代码解析】
第1行代码读取Excel表作为DataFrame。
第2行代码过滤写权限为Yes的行。
第3行代码分组并合并UserName列。
第4行代码添加分组名称列。
第5行代码过滤读权限为Yes的行。
第6行代码分组并合并UserName列。
第7行代码添加分组名称列。
第8行代码合并读写两个DataFrame。
第9行代码重命名列并选择需要的列。

在这里插入图片描述

小结:
Python的Pandas库可以便捷地处理Excel表数据。通过filter和groupby可以进行分组,concat可以实现表连接,apply方法可以在分组上执行操作,生成自定义列。


相关系列博文链接:

用户权限数据转换为用户组列表(1/3) - VBA
用户权限数据转换为用户组列表(2/3) - Power Query
用户权限数据转换为用户组列表(3/3) - Excel PY公式

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

用户权限数据转换为用户组列表(3/3) - Excel PY公式 的相关文章

  • php+redis实现对200w用户的即时推送服务

    欢迎加入 新群号码 99640845 怎么实现对200w用户的即时推送 这个推送可以理解为调用第三方的接口 push sms之类的东西 当时先写了一个demo 直接读取DB然后单个推送 结果 可想而知 于是设计一套基于redis php多进
  • 科普——未知的公共免费WIFI存在的风险及隐患

    就现阶段 我们打开手机WIFI功能 无论何时何地都能发现很多位置来源的免费WIFI 这些WIFI一般都不需要密码 可是 它们真的安全吗细节不讲 如果你连到了陌生的wifi 你用浏览器去登录一些网站 你看到的是这样的 然而 当你点击登陆 在别
  • Apache Beam程序向导4

    今天在集群上实验Beam On Spark的时候 遇到一个坑爹的问题 这个问题总结起来是一个java lang NoClassDefFoundError 错误 具体错误如下图1所示 图1 错误提示 该错误提示SparkStreamingCo
  • 如何在数据验证单元格区域禁用粘贴

    为了确保数据准确性 在A列设置了数据验证 可以输入值的列表如下图所示 但是如果用户使用复制 粘贴 仍然可以输入其他值 如下图所示 使用如下事件可以实现禁止粘贴 Private Sub Worksheet Change ByVal Targe
  • 警惕!MySQL成数据勒索新目标

    据最新报道显示 继MongoDB和Elasticsearch之后 MySQL成为下个数据勒索目标 从2月12日凌晨开始 已有成百上千个开放在公网的MySQL数据库被劫持 删除了数据库中的存储数据 攻击者留下勒索信息 要求支付比特币以赎回数据
  • 你的数据隐私值多少钱?也许已有答案了

    全文共6032字 预计学习时长12分钟 图片来源 Timo Lenzen 对于一些大型科技公司来说 这一年侵犯用户隐私付出的代价变高了 未来还会更高吗 今年7月 脸书在受到有关泄露数亿用户数据隐私的指控后 同意缴纳50亿美元的罚金 同一周内
  • MySQL数据导入--load data

    起因 朋友的数据库 用的版本是5 5 19 服务端和客户端字符集都是utf8 因为某些原因 系统经过好多人的开发和处理 同一个表存在多种字符集写入 so乱码问题 时有发生 为了彻底解决这个问题 我这边的操作如下 1 核查工程中转码的地方 2
  • Matlab深度学习笔记——深度学习工具箱说明

    本文是Rasmus Berg Palm发布在Github上的Deep learning toolbox的说明文件 作者对这个工具箱进行了详细的介绍 原文链接 https github com rasmusbergpalm DeepLearn
  • 数据倾斜

    数据倾斜发生时的现象 1 绝大多数task执行得都非常快 但个别task执行的极慢 2 原本能正常执行的Spark作业 某天突然爆出OOM 内存溢出 异常 观察异常栈 是我们写的业务代码造成的 数据倾斜发生的原理 在进行shuffle的时候
  • PC: 市场寒冬剖析

    市场调研机构Canalys数据显示 今年一季度 中国市场整体PC出货量同比下降24 至890万台 已是连续第五个季度下跌 今年截至618结束 都没有一家主要的PC厂商愿意发战报 PC市场怎样走出寒冬 谈谈你的理解和看法 PC 一 2022年
  • 数据分析和挖掘常用方法

    数据分析和挖掘常用方法 介绍 聚类分析 回归分析 分类分析 以及其他常用分析手段 不同方法的内在业务联系 聚类分析 用户由哪些群体组成 这些群体有哪些明显特征 回归分析 未来销售趋势预测 营销投入如何影响销售 分类分析 如何筛选出更值得营销
  • 数据链路层的有那三个基本问题?为什么都必须加以解决?

    数据链路层的有那三个基本问题 为什么都必须加以解决 数据链路层的三个基本问题 封装成帧 透明传输 差错检测 封装成帧就是在一段数据前后分别添加首部和尾部 接收端以便从收到的比特流中识别帧的开始与结束 帧定界是分组交换的必然要求 透明传输避免
  • python笔记:变量赋值与注意事项

    1 单个变量赋值 a 变量未赋值会报错 a 1 正确写法 2 多个变量赋值 方法1 a b c 1 方法2 a b c 1 1 1 print a b c 1 1 1 3 基本变量类型 五大类 字符串 string 数字 Numeric 列
  • Pythonの类

    Python是一种面向对象编程语言 因此类在Python中是很重要的概念 类是一种定义数据和行为的模板 可以创建对象并针对特定的问题对其进行操作 在Python中 类的定义以关键字 class 开头 后跟类的名称 类可以包含方法和属性 方法
  • bat命令备份oracle数据库,并且删除7天之前的数据文件

    用批处理命令备份oracle数据库 我是用在windows server 2008 服务器上 并且创建了定时任务 让他7天执行一次 下面贴出代码 echo off echo echo Windows环境下Oracle数据库的自动备份脚本 e
  • 机器学习论文总结

    作者简介 洪亮劼 Etsy数据科学主管 前雅虎研究院高级经理 长期从事推荐系统 机器学习和人工智能的研究工作 在国际顶级会议上发表论文20余篇 长期担任多个国际著名会议及期刊的评审委员会成员和审稿人 责编 何永灿 欢迎人工智能领域技术投稿
  • python笔记:python的优点

    pyhon语言的优点 1 简单易用 2 提供了大量的功能类库 3 python具有语言兼容性 4 具有跨系统移植能力 5 代码免费开源
  • 决策分类树算法之ID3,C4.5算法系列

    一 引言 在最开始的时候 我本来准备学习的是C4 5算法 后来发现C4 5算法的核心还是ID3算法 所以又辗转回到学习ID3算法了 因为C4 5是他的一个改进 至于是什么改进 在后面的描述中我会提到 二 ID3算法 ID3算法是一种分类决策
  • PX4log文件分析工具

    功能介绍 该工具可读取PX4存储的bin文件 自动将其进行解析 解析后可根据需求 选择需要导出的数据 将数据导出到txt文件中 几点说明 应用场景 需要将飞行数据导入到matlab中 对数据进行分析 使用原始的sdlog2pumy py文件
  • python大规模数据处理技巧之一:数据常用操作

    面对读取上G的数据 python不能像做简单代码验证那样随意 必须考虑到相应的代码的实现形式将对效率的影响 如下所示 对pandas对象的行计数实现方式不同 运行的效率差别非常大 虽然时间看起来都微不足道 但一旦运行次数达到百万级别时 其运

随机推荐

  • 从zookeeper官方文档系统学习zookeeper

    从zookeeper官方文档系统学习zookeeper 1 zookeeper 2 zookeeper 文档 3 zookeeper 单机版 3 1 配置 3 2 启动 3 3 验证 4 zookeeper 集群版 4 1 配置 4 2 启
  • centos7 Jumpserver堡垒机部署以及使用详情

    一 跳板机 堡垒机的概念 1 跳板机 跳板机就是一台服务器 运维人员在使用管理服务器的时候 必须先连接上跳板机 然后才能去操控内网中的服务器 才能登录到目标设备上进行维护和操作 跳板机的缺点 仅仅实现服务器登录安全 但是没有实现对于运维人员
  • ChatGPT-Sorry, you have been blocked 解决办法

    使用无痕模式登录 已谷歌浏览器举例 右上点打开性的无痕模式 再访问地址 如下 可以继续登录了
  • Hadoop生态概述及常见报错

    Hadoop Hadoop是一个开源框架来存储和处理大型数据在分布式环境中 它包含两个模块 一个是MapReduce 另外一个是Hadoop分布式文件系统 HDFS MapReduce 它是一种并行编程模型在大型集群普通硬件可用于处理大型结
  • 亲测有效win10系统QQ音乐无法安装

    本人使用win10专业版时 因为一些原因 多次下载qq音乐都无法进入安装界面 找了很多原因都无法解决 最后在网上找到好像是因为火绒的原因 于是关闭火绒 再次尝试安装 遂成功 实在不行可以卸载火绒安全后重启电脑 再从官网重新下载QQ音乐安装包
  • 数据预处理-独热编码(One-Hot)

    1 部分特征如人的性别有男女 国家有中国 美国 法国等 并不是连续的 而是离散的 无序的 通常我们需要对其进行特征数字化 2 假如某个样本 某个人 他的特征是这样的 男 中国 乒乓球 我们可以用 0 0 4 来表示 但是这样的特征处理并不能
  • BeautifulSoup基本用法总结

    BeautifulSoup是Python的一个库 最主要的功能就是从网页爬取我们需要的数据 BeautifulSoup将html解析为对象进行处理 全部页面转变为字典或者数组 相对于正则表达式的方式 可以大大简化处理过程 0x01 安装 建
  • Leetcode 106. 从中序与后序遍历序列构造二叉树

    文章目录 题目 代码 9 18 首刷自解 题目 Leetcode 106 从中序与后序遍历序列构造二叉树 代码 9 18 首刷自解 class Solution public unordered map
  • UE4文字显示乱码“字字字字字字字字”的解决办法

    键盘win R 搜索fonts 2 滑到最底下右键复制 宋体常规简体字 3 复制到ue4项目的字体文件夹中 如下 注意在外部文件处复制 4 回到项目界面 此时右下角会有个弹窗提示是否确认导入 点击导入 然后会弹一个 字体样式导入选项 弹框
  • openGauss学习笔记-63 openGauss 数据库管理-资源池化架构

    文章目录 openGauss学习笔记 63 openGauss 数据库管理 资源池化架构 openGauss学习笔记 63 openGauss 数据库管理 资源池化架构 本文档主要介绍资源池化架构下的一些最佳实践和使用注意事项 用于支撑对相
  • go Cobra命令行工具入门

    简介 Github https github com spf13 cobra Star 26 5K Cobra是一个用Go语言实现的命令行工具 并且现在正在被很多项目使用 例如 Kubernetes Hugo和Github CLI等 通过使
  • Failed to set locale, defaulting to C.UTF-8解决方法

    CentOS 8Linux系统提示 Failed to set locale defaulting to C UTF 8 这是由于没有配置正确的语言环境导致的 Linux百科 使用root账户登录你的CentOS操作系统 然后执行两条命令
  • 现阶段计算机网络技术专业人才培养的发展对策

    确立具有高职特色的人才培养目标 在市场经济的条件下 人才培养首先要适应市场需求 以市场行业的需求为导 向制定人才培养目标 学校人才培养是否能满足社会需求 可以通过学生在对口行 业及相关领域的就业情况来衡量 高职教育培养高技能应用型人才 与研
  • Objective-C中的封装、继承、多态、分类

    封装 封装最好理解了 封装是面向对象的特征之一 是对象和类概念的主要特性 封装 也就是把客观事物封装成抽象的类 并且类可以把自己的数据和方法只让可信的类或者对象操作 对不可信的进行信息隐藏 继承 面向对象编程 OOP 语言的一个主要功能就是
  • 测试工具73款

    我们将本文的软件测试工具分为4类 1 Web应用测试工具 2 网站安全测试工具 3 跨浏览器测试工具 4 移动应用测试工具 注 工具排名没有任何意义 1 Web应用测试工具 我们列出了一些在Web应用程序上执行性能 负载和压力测试的关键工具
  • 开源项目MiniWord .NET Word 操作由Word模板和数据简单、快速生成文件

    MiniWord NET Word 介绍 MiniWord NET Word模板引擎 藉由Word模板和数据简单 快速生成文件 image Getting Started 安装 nuget link https www nuget org
  • ubuntu18.04命令安装ros2

    ROS2官方文档 本教程为apt get命令安装方式 官网教程有点问题 借鉴一下大佬的安装方式 文章目录 1 安装ROS2 1 1 安装秘钥相关指令 1 2 授权秘钥 1 3 添加ROS2软件源 1 4 安装 2 设置环境 可选但是推荐 2
  • vue路由器学习(个人学习笔记四)

    目录 友情提醒 第一章 路由简介 1 1 什么是路由 1 2 安装路由插件 第二章 自定义路由器 2 1 创建路由器文件index js文件 2 2 index js文件中配置路由信息 第三章 使用路由器 3 1 在main js文件中将路
  • 基于Item的协同过滤算法实践(最简单的在线电影推荐系统)

    上一篇文章 基于用户的协同过滤算法实践 中 基于用户的相似度生成推荐列表 本文将基于Item的相似度阐述 1 相似度 基于物品的协同过滤算法 简称ItemCF 给用户推荐那些和他们之前喜欢的物品相似的物品 不过ItemCF不是利用物品的内容
  • 用户权限数据转换为用户组列表(3/3) - Excel PY公式

    最近Excel圈里的大事情就是微软把PY塞进了Excel单元格 可以作为公式使用 轻松用PY做数据分析 系好安全带 老司机带你玩一把 实例需求 如下是AD用户的列表 每个用户拥有该应用程序的只读或读写权限 现在需要创建新的AD用户组 并根据