Python loc + isin 返回 FutureWarning(元素比较失败)
Posted
技术标签:
【中文标题】Python loc + isin 返回 FutureWarning(元素比较失败)【英文标题】:Python loc + isin returns FutureWarning (elementwise comparison failed) 【发布时间】:2020-03-04 10:01:16 【问题描述】:df = df.loc[df['var'].isin(df2['this'].unique().tolist())]
上面的代码给了我一个 FutureWarning,我无法解决它。这是错误还是功能?
C:\Users\Username\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\lib\arraysetops.py:569: FutureWarning:元素比较失败;返回标量 相反,但将来会执行元素比较掩码 |= (ar1 == a)
【问题讨论】:
【参考方案1】:比较数据集中的“int”和“str”时会出现此警告。将.astype(str)
添加到您的比较数据集中。
试试这个
df = df.loc[df['var'].astype(str).isin(df2['this'].astype(str).unique().tolist())]
【讨论】:
以上是关于Python loc + isin 返回 FutureWarning(元素比较失败)的主要内容,如果未能解决你的问题,请参考以下文章
python练习:编写一个函数isIn,接受两个字符串作为参数,如果一个字符串是另一个字符串的一部分,返回True,否则返回False。