python - eval 抛出 "TypeError: unhashable type: ' numpy.ndarray'"

标签 python pandas

我有以下 pandas DataFrame df:

   Col1    Col2
0  NaN     Type1
1  NaN     Type2
2  NaN     Type1
3  A       Type1
4  NaN     Type1

我需要获取 Col1 等于 NaNCol2 等于 Type1 的行索引。这是我尝试过的:

ix = df.eval("Col1.isna() and Col2== 'Type1'")

但它给了我以下错误:

TypeError: unhashable type: 'numpy.ndarray'

最佳答案

做这样的事情:

df.index[df['Col1'].isna() & df['Col2'].eq('Type1')].tolist()

这应该可以工作,只是能够运行它。

关于python - eval 抛出 "TypeError: unhashable type: ' numpy.ndarray'",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59505314/

相关文章:

python - 分离DNA(A、T、C、G)模板的异常读数

python - 使用 NumPy 将用户/项目评分转换为二维数组

python - 为 pandas 数据框插入标题行

python - 在不包括某些数字的范围内生成随机数

python - 使用 Q 自动生成 django 查询

python - 将数据框分解为子集/组的新数据框。从其他数据框创建数据子集/组的新数据框

python - 查找 Pandas 数据帧之间的不同行,同时保留一个 df 中的所有原始数据

python - Pandas Dataframe 中的动态索引字符串切片

python - 如何控制 Pandas 中每小时的 GROUPBY 设置?

python - Scrapy 信息不是 JSON 可序列化的