018—pandas 生成笛卡尔积排列组合合并多列字符串数据

思路:

本需求需要将给定的几列数据,生成一个排列组合形式的数据列,利用到 Pandas 多层索引生成的笛卡尔积的方法。

二、使用步骤

1.引入库

代码如下(示例):

import pandas as pd

2.读入数据

代码如下(示例):

df = pd.DataFrame({
    '姓名': list('甲乙丙')+[None],
    '序号': list('12')+[None]*2,
    '列': list('ABCD')
})
df

在这里插入图片描述

#利用 pd.MultiIndex.from_product 方法,再经过一系列数据格式转换:
(
    pd.MultiIndex.from_product([df.姓名, df.序号, df.], names=df.columns)
    .to_frame()
    .loc[lambda x: x.apply(lambda s: s.notna().all(), axis=1)] #选择非空值
    .astype(str)
    .agg(sum, axis=1)
    .to_frame('生成')
)

在这里插入图片描述

总结

以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/406604.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

每日一学—由面试题“Redis 是否为单线程”引发的思考

文章目录 📋 前言🌰 举个例子🎯 什么是 Redis(知识点补充)🎯 Redis 中的多线程🎯 I/O 多线程🎯 Redis 中的多进程📝 结论🎯书籍推荐🔥参与方式 &a…

【Ubuntu】解决Ubuntu 22.04开机显示器颜色(高对比度/反色)异常的问题

使用Ubuntu 22.04时强制关机了一下(make -j16把电脑搞崩了),开机后系统显示的颜色异常,类似高对比度或反色,如下图。看着很难受,字体也没办法辨认。还好之前遇到过类似的问题,应该是一个配置文件…

政府采购网有哪些回款方式

政府采购网的回款方式多种多样,具体取决于采购项目的性质、规模以及采购单位与供应商之间的约定。以下是一些常见的政府采购网回款方式: 线上支付:随着电子商务的发展,越来越多的政府采购项目采用线上支付方式。这种方式方便快捷&…

TLS握手证书链的校验

看一遍忘一遍,还是自己写一遍,看看这次能记多久。 在TLS握手过程中,通过证书校验认证服务端的身份和交换加密秘钥,握手完成之后后续就可以进行加密数据传输。 在浏览器地址栏上点击锁的图标,能打开查看证书的详细信息…

猫毛过敏却想养猫时?如何缓解猫毛过敏?宠物空气净化器推荐

作为一个新养猫的主人,一开始并没有发现对猫咪过敏。直到养了半年才意识到这个问题,而此时我已经和猫咪有了深厚的感情。我不想放弃我的猫咪,但是留着它的话,我经常会因为流眼泪、打喷嚏、眼睛发红等过敏症状而影响日常生活&#…

位运算03 不用加号的加法[C++]

图源:文心一言 上机题目练习整理,位运算,供小伙伴们参考~🥝🥝 网页版目录在页面的右上角↗~🥝🥝 第1版:在力扣新手村刷题的记录~🧩🧩 编辑:梅…

go 1.18 不同目录package引用问题

go 1.18开始使用module了 不同的package在vs code中引用的话 需要先开启 是Go1.11版本之后 推出的版本管理工具 有点类似java的 maven工具 可以引入依赖使用 go env -w GO111MODULEon 先把这个打开 然后在创建的vs code工作目录下 执行 module gomdoule module 模块名 会生…

(六)激光线扫描-三维重建

本篇文章是《激光线扫描-三维重建》系列的最后一篇。 1. 基础理论 1.1 光平面 在之前光平面标定的文章中,已经提到过了,是指 激光发射器投射出一条线,形成的一个扇形区域平面就是光平面。 三维空间中平面的公式是: A X + B Y + C Z + D = 0 A X+B Y+C Z+D=0

解决RabbitMQ管理页面异常/不正确的问题

正确的页面:有Channels、Exchanges等 异常/不正确的页面: 问题原因 我的RabbitMQ是用docker安装的,应该不会是安装的环境有问题。 而且MQ的服务确实是启动了,后端能正常使用,并且管理界面的登录页面也是能正常登录的&…

流程图:理解、创建与优化的视觉工具

流程图:理解、创建与优化的视觉工具 引言 在日常生活和工作中,我们经常遇到需要描述一系列步骤或过程的情况。这些步骤可能是制作一杯咖啡、完成一个项目,或者是解决一个复杂的数学问题。流程图,作为一种强大的视觉工具&#xf…

数据同步MySQL -> Elasticsearch

大家好我是苏麟,今天聊聊数据同步 . 数据同步 一般情况下,如果做查询搜索功能,使用 ES 来模糊搜索,但是数据是存放在数据库 MySQL 里的,所以说我们需要把 MySQL 中的数据和 ES 进行同步,保证数据一致(以 MySQL 为主)…

在 Jupyter Notebook 中查看所使用的 Python 版本和 Python 解释器路径

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 我们在做 Python 开发时,有时在我们的服务器上可能安装了多个 Python 版本。 使用 conda info --envs 可以列出所有的 conda 环境。当在 Linux 服务器上使用 which python 命令时&#xff0…

ES通用查询页面使用说明

前言:ES语法比较复杂,需要专门的学习,而且查询工具不太友好, 对公司运维人员使用有点困难,所以花了个时间做了一个页面,方便运维人员使用,如下。 也不难,有兴趣的朋友可以私聊发源码。 开发帮助-ES数据查询 搜索 输入要查看的文档索引,文档类型后点【查询】即可 搜…

Python之Matplotlib

Matplotlib 是一个综合库,用于创建静态、动画、 和交互式可视化 安装 pip install matplotlib 功能 示例 import matplotlib.pyplot as plt plt.figure() plt.plot([1,2,3],[10,20,30]) plt.show() 官方文档: Matplotlib — Visualization with Pyt…

Covalent Network(CQT)发展新里程碑:SOC 2 数据安全认证通过,进一步加强了其人工智能支持

Covalent Network(CQT)现已完成并通过了严格的 Service Organization Control(SOC) 2 Type II 的合规性审计,通过由备受行业认可的机构执行,进一步证明了 Covalent Network(CQT)团队坚定不移地致…

【区块链】智能交易模式下的数据安全流通模型

【区块链】智能交易模式下的数据安全流通模型 写在最前面**区块链智能交易模式概述****数据安全流通的挑战****数据安全流通模型的核心要素****实现数据安全流通的区块链技术****区块链智能交易模式下数据安全流通模型的设计原则****数据安全流通模型的应用案例分析****面临的挑…

OpenAI划时代大模型——文本生成视频模型Sora作品欣赏(五)

Sora介绍 Sora是一个能以文本描述生成视频的人工智能模型,由美国人工智能研究机构OpenAI开发。 Sora这一名称源于日文“空”(そら sora),即天空之意,以示其无限的创造潜力。其背后的技术是在OpenAI的文本到图像生成模…

全面解析企业财务报表系列之四:财务报表的真实性和可靠性

全面解析企业财务报表系列之四:财务报表的真实性和可靠性 一、什么是会计方法二、选择会计方法三、会计方法的重要性四、会计报表常用的造假手段五、财务报表经常被遗漏的重要事件六、财务报告造假的资信敏感性七、财务报告审计的重要性八、审计报告 一、什么是会计…

HL祭记汇

一.写在前面 如果说廿四10天集训,对于我,是完成了从入门(虽然可能我比别人入门更早?)到准OIer的蜕变,那么,HL7天,可以说是真正成为了OIer,虽然是被小学生、初中生&#…

【时事篇-05-04】20240224 27笔货币基金中有3笔250元的具体数目测算( itertools)

结果展示 背景需求: 前文测算了27只货币基金,如果存145、146、147、148、149、150元分别需要存几笔。结果是4、4、4、5、5、5 【时事篇-05-03】20240222 金额145-150元填充27笔货币基金的具体数目测算( itertools)-CSDN博客文章…