首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >过滤映射值

过滤映射值
EN

Stack Overflow用户
提问于 2022-01-20 16:57:22
回答 1查看 69关注 0票数 0

抱歉,新来的。

我在用熊猫来看地板。映射数据集中的列。我将根据映射的值进行筛选,只返回符合我条件的行。

我的数据如下所示:列: UUID,UUID_c,approvalTimestamp,approvalTimestamp列看起来如下(并且是一个对象数据类型):

代码语言:javascript
复制
[('US', 'IB'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]

我想过滤美国的价值,无论是"IA“或"IB”。

这将返回地图中"US“的所有实例:

代码语言:javascript
复制
df2 = df[df['Rating'].str.contains("US")]

这将返回一个空的dataframe:

代码语言:javascript
复制
df2 = df[df['Rating'].str.contains("IA")]

如何返回分配给美国的值为"IA“或"IB”的实例?

dataframe看起来像:

代码语言:javascript
复制
UUID  |  UUID_c  |   Rating   |  approvalTimeStamp|
---------------------------------------------------
037a9db2-c91f-4e93-a36e-3b6e7adb885f   |   ['8b2c409b-6c01-0100-2d32-670000010368','1fdfa790-a001-0100-5efe-b90000060013'] | [('US', 'IB'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]   |   2022-01-06T19:10:46.304734Z
037a9db2-c91f-4e93-a36e-3b6e7adb885f   |   ['8b2c409b-6c01-0100-2d32-670000010368','691aa282-e1ec-4904-b6c3-18a20ba3cda2'] | [('US', 'IIC'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]   |   2022-01-06T19:10:46.304734Z
037a9db2-c91f-4e93-a36e-3b6e7adb885f   |   ['8b2c409b-6c01-0100-2d32-670000010368','eb8d409b-6c01-0100-0f90-bd0000410011'] | [('US', 'IA'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]   |   2022-01-06T19:10:46.304734Z

想要返回这个:(装修出美国,IIC行)

代码语言:javascript
复制
 UUID  |  UUID_c  |   Rating   |  approvalTimeStamp|
    ---------------------------------------------------
    037a9db2-c91f-4e93-a36e-3b6e7adb885f   |   ['8b2c409b-6c01-0100-2d32-670000010368','1fdfa790-a001-0100-5efe-b90000060013'] | [('US', 'IB'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]   |   2022-01-06T19:10:46.304734Z
    037a9db2-c91f-4e93-a36e-3b6e7adb885f   |   ['8b2c409b-6c01-0100-2d32-670000010368','eb8d409b-6c01-0100-0f90-bd0000410011'] | [('US', 'IA'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]   |   2022-01-06T19:10:46.304734Z
EN

回答 1

Stack Overflow用户

发布于 2022-01-21 10:16:08

这可能有助于:

代码语言:javascript
复制
df = pd.DataFrame({'id': ['037a9db2-c91f-4e93-a36e-3b6e7adb885f','037a9db2-c91f-4e93-a36e-3b6e7adb885f','037a9db2-c91f-4e93-a36e-3b6e7adb885f'],
                   'Rating' : [[('US', 'IB'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')],[('US', 'IIC'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')],[('US', 'IA'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]]})
df

    id                                      Rating
0   037a9db2-c91f-4e93-a36e-3b6e7adb885f    [(US, IB), (EU, IA), (CA, IIC), (CH, III), (UK...
1   037a9db2-c91f-4e93-a36e-3b6e7adb885f    [(US, IIC), (EU, IA), (CA, IIC), (CH, III), (U...
2   037a9db2-c91f-4e93-a36e-3b6e7adb885f    [(US, IA), (EU, IA), (CA, IIC), (CH, III), (UK...

Lambda功能:

代码语言:javascript
复制
lst = df.apply(lambda row : True if ('US','IIC') not in row['Rating'] else False, axis= 1)
df[lst]

结果

代码语言:javascript
复制
    id                                      Rating
0   037a9db2-c91f-4e93-a36e-3b6e7adb885f    [(US, IB), (EU, IA), (CA, IIC), (CH, III), (UK...
2   037a9db2-c91f-4e93-a36e-3b6e7adb885f    [(US, IA), (EU, IA), (CA, IIC), (CH, III), (UK...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70790311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档