Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用isin函数后的空df

使用isin函数后的空df
EN

Stack Overflow用户
提问于 2022-03-28 00:23:27
回答 1查看 99关注 0票数 1

你好,我试图过滤掉另一个dict中包含的df列

以下是样本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import random
df = pd.DataFrame({'type': random.choice(['222', '44']), #let size be 10k for example
                   'method': random.choice(['open', 'close'])}) 
filter_dict = {'type': {0: ['44']}, 'method': {0: ['open', 'closed']}}

它工作得很好,with df[df['method'].isin(filter_dict['method'][0])]

当我尝试像这样过滤下一列时,我得到了一个空的dataframe

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df[df['type'].isin(filter_dict['type'][0])]

想想为什么会发生这种事,你的答案

熊猫版本是0.23.4

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-28 00:30:47

您的示例是无效的(您在random.choice中有一个唯一的值,因此出现了熊猫错误),但是,否则,代码就像预期的那样工作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import numpy as np
np.random.seed(0)
df = pd.DataFrame({'type': np.random.choice(['222', '44'], size=20),
                   'method': np.random.choice(['open', 'close'], size=20)})
filter_dict = {'type': {0: ['44']}, 'method': {0: ['open', 'closed']}}

df[df['type'].isin(filter_dict['type'][0])]

产出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
   type method
1    44  close
2    44  close
4    44   open
5    44  close
6    44  close
7    44  close
8    44  close
9    44   open
10   44  close
13   44   open
19   44   open

如果要测试所有列上的条件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mask = np.all([df[c].isin(filter_dict[c][0]) for c in df.columns], axis=0)
df[mask]

产出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
   type method
4    44   open
9    44   open
13   44   open
19   44   open
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71644380

复制
相关文章
[948]Pandas数据分组的函数应用(df.apply()、df.agg()和df.transform()、df.applymap())
这个函数需要自己实现,函数的传入参数根据axis来定,比如axis = 1,就会把一行数据作为Series的数据 结构传入给自己实现的函数中,我们在函数中实现对Series不同属性之间的计算,返回一个结果,则apply函数 会自动遍历每一行DataFrame的数据,最后将所有结果组合成一个Series数据结构并返回。
周小董
2021/03/04
2.3K0
Python-科学计算-pandas-24-创建空DF
系统:Windows 10 编辑器:JetBrains PyCharm Community Edition 2018.2.2 x64 pandas:1.1.5
zishendianxia
2022/04/11
7560
Python-科学计算-pandas-24-创建空DF
DataFrame(7):DataFrame运算——逻辑运算
https://alltodata.cowtransfer.com/s/b8aa2f26ca0947
朱小五
2020/07/17
2.5K0
DataFrame(7):DataFrame运算——逻辑运算
利用pandas处理Excel数据
新建一个excel表格(table1.csv)用于案例讲解: 导库 import pandas as pd import numpy as np 读取数据 df = pd.read_excel('
Python编程与实战
2021/03/10
1.1K0
利用pandas处理Excel数据
pandas中 df[‘X‘]和df[[‘X‘]]的不同
df = pd.DataFrame({‘X’: [1, 2, 7, 5, 10], ‘Y’: [4, 3, 8, 2, 9]})
Twcat_tree
2022/12/05
1.7K0
pandas中 df[‘X‘]和df[[‘X‘]]的不同
最喜欢随机森林?周志华团队DF21后,TensorFlow开源决策森林库TF-DF
在人工智能发展史上,各类算法可谓层出不穷。近十几年来,深层神经网络的发展在机器学习领域取得了显著进展。通过构建分层或「深层」结构,模型能够在有监督或无监督的环境下从原始数据中学习良好的表征,这被认为是其成功的关键因素。
机器之心
2021/06/08
9000
【Kotlin】空安全 ④ ( 手动空安全管理 | 空合并操作符 ?: | 空合并操作符与 let 函数结合使用 )
如果 表达式 A 的值 不为 null , 则 整个表达式的值 就是 表达式 A 的值 ;
韩曙亮
2023/03/30
8790
【Kotlin】空安全 ④ ( 手动空安全管理 | 空合并操作符 ?: | 空合并操作符与 let 函数结合使用 )
pandas数据清洗,排序,索引设置,数据选取
df.isnull() df的空值为True df.notnull() df的非空值为True
李智
2018/08/03
3.3K0
【Kotlin】空安全 ② ( 手动空安全管理 | 空安全调用操作符 ? | let 函数结合空安全调用操作符使用 )
文章目录 一、手动空安全管理 二、空安全调用操作符 ? 三、let 函数结合空安全调用操作符使用 一、手动空安全管理 Kotlin 语言中 , 变量类型 分为 可空类型 和 非空类型 , 默认状态 下
韩曙亮
2023/03/30
6140
【Kotlin】空安全 ② ( 手动空安全管理 | 空安全调用操作符 ? | let 函数结合空安全调用操作符使用 )
pandas技巧4
本文中记录Pandas操作技巧,包含: 导入数据 导出数据 查看、检查数据 数据选取 数据清洗 数据处理:Filter、Sort和GroupBy 数据合并 常识 # 导入pandas import pandas as pd # axis参数:0代表行,1代表列 导入数据 pd.read_csv(filename) # 从CSV文件导入数据 pd.read_table(filename) # 从限定分隔符的文本文件导入数据 pd.read_excel(filename) # 从Excel文件导入数据
皮大大
2021/03/01
3.4K0
Python 数据分析初阶
这里可以单独查看其中的内容 data['nick'],计算其中的大小则使用 data['nick'].value_counts()。
zucchiniy
2020/05/22
1.3K0
sql题目pandas解法(02):isin
有不少小伙伴向我反映 pandas 专栏缺少练习题,因此这里我使用一套 sql 的题目,作为 pandas 专栏的课后练习题。本文大部分的解题过程尽可能使用 pandas 中最基础的入门操作完成,涉及的知识点基本在专栏中的前15节内容中有详尽讲解。
咋咋
2021/09/01
8330
sql题目pandas解法(02):isin
从Excel到Python:最常用的36个Pandas函数
本文涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入、数据清洗、预处理,以及最常见的数据分类,数据筛选,分类汇总,透视等最常见的操作。
统计学家
2019/12/05
11.5K0
从Excel到Python:最常用的36个Pandas函数
返回非空值函数LastnonBlank的第2参数使用方法
第2参数是一个表达式,是对第一参数进行过滤的表达式。如果我们第二参数只写一个常数,则等同于返回列表的最大值,主要差异表现在汇总合计上。
逍遥之
2020/03/24
2.1K0
python df 列替换_如何用Python做数据分析,没有比这篇文章更详细的了(图文详情)...
如果你平常做数据分析用 Excel,想要用 Python 做还不太会?那这篇系统的文章一定能帮到你!建议先收藏后食用
用户7886150
2020/12/26
4.5K0
高效的10个Pandas函数,你都用过吗?
Pandas是python中最主要的数据分析库之一,它提供了非常多的函数、方法,可以高效地处理并分析数据。让pandas如此受欢迎的原因是它简洁、灵活、功能强大的语法。
朱卫军 AI Python
2022/04/03
4.2K0
高效的10个Pandas函数,你都用过吗?
Gitlab 创建空Project后的初始化问题
我们如果通过GitLab 创建了一个项目后。如果直接进行TortoiseGit进行操作。
zinyan.com
2022/12/07
4.7K0
MySQL中的ifnull()函数判断空值
我们知道,在不同的数据库引擎中,内置函数的实现、命名都是存在差异的,如果经常切换使用这几个数据库引擎的话,很容易会将这些函数弄混淆。
星哥玩云
2022/08/18
9.9K0
数据分析小实验(下)
目录 一、数据准备 二、缺失值处理 三、清洗数据 四、聚类分析 五、结果评估与分析 三、清洗数据 对categorical data特征进行观察。发现很
智能算法
2018/04/03
1.1K0
数据分析小实验(下)
点击加载更多

相似问题

使用concat后遇到空DF时,熊猫isin返回一个错误。

21

使用df1[~df1.isin(df2)].dropna()问题

28

在元组的一列上使用df.isin()函数

24

使用Pandas函数isin()

13

pandas使用isin函数

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文