不允许一个迭代的对象自己接着迭代下去(Python)【fronzenset】
这个问题,我是在用Pandas处理数据的时候用的
这个连接是我遇到这个问题的详细解析。这篇文章,做的其实是对这一小块的深入挖掘。
当时遇到了这样的问题。
我想要把满足特定条件的dataframe的每一个的元素都赋值为一个同一个可迭代的对象, 但是,这里就出现了问题了。这里的赋值机制会使得在赋值的过程中,迭代的放置。
- 机智的人可能会想了。如果我用一个二重的可迭代对象。比如列表的列表。但其实这两种做法,虽然有些时候有效,但是对于pandas大dataframe的处理的情况,却不是这样的。
- 这就很迷惑了,明明这么有趣的方法居然用了。这该多可惜。
我用的是Python3.5
下面看下这个东西该如何解决。
import pandas as pdif __name__ == '__main__':df = pd.DataFrame({'AAA': range(5), 'BBB': list('abcde'), 'CCC': ['a', 12, 1.2, ['alist'], (1, 2)]})print(df)df.loc[df.AAA >= 3, 'CCC'] = frozenset((1, 2))print(df)
通过这个代码就可以解决这个问题了。
重点是标题中我已经谈到的fronzenset这个函数。
大家可以通过对于输出的考察,就可以看到了~
AAA BBB CCC
0 0 a a
1 1 b 12
2 2 c 1.2
3 3 d [alist]
4 4 e (1, 2)AAA BBB CCC
0 0 a a
1 1 b 12
2 2 c 1.2
3 3 d (1, 2)
4 4 e (1, 2)
最后,老套路,宣传一波自己的公众号!(求关注哇!)
本人中大一肥宅,欢迎大家关注,请扫下面的二维码(〃’▽’〃)
如果觉得有帮助的话,可以扫码,赞赏鼓励一下!谢谢!
不允许一个迭代的对象自己接着迭代下去(Python)【fronzenset】相关推荐
- Python(24)-面向对象3-可迭代类对象Pokemon
面向对象3-Pokemon demo 1.可迭代类对象 1.可迭代类对象 想要实现类对象中某些属性/数值的迭代访问,需要在类中定义一个__iter__()方法,和__next__() 的方法(pyth ...
- Python可迭代的对象与迭代器
什么是迭代?迭代是指按需一次获取一个数据.是否可以迭代,可以通过是否可以使用for循环取值来进行简单的判断.更准确的判断是使用iter()函数,这是一个Python内置函数. 可迭代的对象 iter( ...
- 在Python中,如何确定对象是否可迭代?
有没有类似isiterable的方法? 到目前为止,我发现的唯一解决方案是致电 hasattr(myObj, '__iter__') 但是我不确定这有多愚蠢. #1楼 根据Python 2词汇表 ,可 ...
- python判断一个对象是否可迭代_python - 在Python中,如何确定对象是否可迭代? - includeStdio...
有没有像isiterable?我目前找到的唯一解决方案就是打电话 hasattr(myObj, '__iter__') 但我不确定这是多么的愚蠢. 检查__iter__序列类型的工作,但是它会在例如P ...
- 《Python Cookbook 3rd》笔记(4.15):顺序迭代合并后的排序迭代对象
顺序迭代合并后的排序迭代对象 问题 你有一系列排序序列,想将它们合并后得到一个排序序列并在上面迭代遍历. 解法 heapq.merge() 函数可以帮你解决这个问题.比如: >>> ...
- Pandas GroupBy对象 索引与迭代
import pandas as pd df = pd.DataFrame({'性别' : ['男', '女', '男', '女','男', '女', '男', '男'],'成绩' : ['优秀', ...
- 《流畅的Python》学习笔记(11):可迭代的对象、迭代器和生成器
迭代是数据处理的基石.扫描内存中放不下的数据集时,我们要找到一种惰性获取数据项的方式,即按需一次获取一个数据项.这就是迭代器模式( Iterator pattern).在数据的预处理工作中,我们常常需 ...
- 流畅的python 14章可迭代的对象、迭代器 和生成器
可迭代的对象.迭代器和生成器 迭代是数据处理的基石.扫描内存中放不下的数据集时,我们要找到一种惰性获取数据项的方式,即按需一次获取一个数据项.这就是迭代器模式(Iterator pattern). 迭 ...
- 流畅的python第十四章可迭代的对象,迭代器和生成器学习记录
在python中,所有集合都可以迭代,在python语言内部,迭代器用于支持 for循环 构建和扩展集合类型 逐行遍历文本文件 列表推导,字典推导和集合推导 元组拆包 调用函数时,使用*拆包实参 本章 ...
最新文章
- 1138: 零起点学算法45——求最大值
- 还有 13 天,苹果就要关上 HTTP 大门了
- java序列化的作用
- linux下netty接收不到服务,Netty 发送消息失败或者接收消息失败的可能原因
- 哈尔滨工业大学-数据库系统(基本知识与关系模型2)
- 计算机高新办公软件应用,OFFICEXP全国计算机信息高新技术考试办公软件应用
- Java虚拟机学习总结(3)——JDK内置工具(jps、jstack、jmap、jstat)使用详解
- linux查看系统位数
- Jquery 屏蔽右键菜单,识别右键事件
- Set集合之CopyOnWriteArraySet
- php排斥ajaxsubmit函数,关于php:ajaxsubmit错误捕获
- 不用u盘安装linux真机,无需u盘和光盘安装linux
- linux怎么查看pid对应的进程,linux如何查看某个pid的进程?
- 高效能人士的七个习惯的简要定义与架构图
- 计算机不工作时硬盘自动响,电脑硬盘不规律响的解决方法
- C#生成不重复随机数(随机宝箱)
- SC7A20获取三轴加速度值
- 【数据结构和算法】基础之素数
- 贪心算法和动态规划的区别
- YOLOv3代码阅读笔记之utils.py(第六篇)