pandas isin追加不可用的类型:' list'错误

时间:2017-10-09 16:46:15

标签: python pandas

我对如何将新项目添加到pandas中的过滤列表充满了想法。

示例:

OldProducts = ProductInfo[ProductInfo['MerchantID'].isin(['A store', 'B store'])]

OldProductsId = list(OldProducts.PID.unique())

OldProductsId2 = ['VayjE7nrDl', 'BYbcAAuV0r', 'hu2y8rYIbN', 'YXELEovcwK']

OldProductsId.append(OldProductsId2)

DetailProductInfo = DetailProductInfo [~DetailProductInfo ['PID'].isin(OldProductsId)]

错误是这样的: TypeError:不可用类型:' list'

2 个答案:

答案 0 :(得分:1)

您已将OIdProductsId2附加到OldProductsId,因此现在OldProductsId是(推测)字符串和列表对象的列表。所以要纠正你的代码改变这一行:

OldProductsId.append(OldProductsId2)

要:

OldProductsId.extend(OldProductsId2)

错误应该消失。

答案 1 :(得分:1)

append方法会将您传递的项目添加为列表中的另一个项目。如果 item 恰好是另一个列表,那么列表中的最后一个元素将是OldProductsId2列表。请改用extend

OldProductsId.append(OldProductsId2)更改为OldProductsId.extend(OldProductsId2)