抱歉,新来的。
我在用熊猫来看地板。映射数据集中的列。我将根据映射的值进行筛选,只返回符合我条件的行。
我的数据如下所示:列: UUID,UUID_c,approvalTimestamp,approvalTimestamp列看起来如下(并且是一个对象数据类型):
[('US', 'IB'), ('EU', 'IA'), ('CA', 'IIC'), ('CH', 'III'), ('UK', 'IA'), ('AU', 'IB'), ('TW', 'III'), ('TK', 'IV')]我想过滤美国的价值,无论是"IA“或"IB”。
这将返回地图中"US“的所有实例:
df2 = df[df['Rating'].str.contains("US")]这将返回一个空的dataframe:
df2 = df[df['Rating'].str.contains("IA")]如何返回分配给美国的值为"IA“或"IB”的实例?
dataframe看起来像:
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行)
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发布于 2022-01-21 10:16:08
这可能有助于:
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功能:
lst = df.apply(lambda row : True if ('US','IIC') not in row['Rating'] else False, axis= 1)
df[lst]结果
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...https://stackoverflow.com/questions/70790311
复制相似问题