当前位置: 首页 > 知识库问答 >
问题:

Pandas比较会引发TypeError:无法将dtype的[Float64]数组与类型为[bool]的标量进行比较。

拓拔安邦
2023-03-14

我的dataFrame有以下结构:

Index: 1008 entries, Trial1.0 to Trial3.84
Data columns (total 5 columns):
CHUNK_NAME                    1008  non-null values
LAMBDA                        1008  non-null values
BETA                          1008  non-null values
HIT_RATE                      1008  non-null values
AVERAGE_RECIPROCAL_HITRATE    1008  non-null values

chunks=['300_321','322_343','344_365','366_387','388_408','366_408','344_408','322_408','300_408']
lam_beta=[(lambda1,beta1),(lambda1,beta2),(lambda1,beta3),...(lambda1,beta_n),(lambda2,beta1),(lambda2,beta2)...(lambda2,beta_n),........]

my_df.ix[my_df.CHUNK_NAME==chunks[0]&my_df.LAMBDA==lam_beta[0][0]]

我想获取特定块的数据帧行,比如块[0]和特定lambda值。因此,在这种情况下,输出应该是数据帧中具有CHUNK_NAME='300_321'和LAMBDA=lambda1的所有行。每返回一个beta值将有n行。但是我得到了下面的错误。如能帮助解决此问题,将不胜感激。

TypeError: cannot compare a dtyped [float64] array with a scalar of type [bool]

共有1个答案

柴瀚昂
2023-03-14
my_df.ix[(my_df.CHUNK_NAME==chunks[0])&(my_df.LAMBDA==lam_beta[0][0])]
         ^                           ^ ^                            ^

 类似资料:
  • 问题内容: 我的dataFrame具有以下结构: 我想获取特定块的数据帧的行,可以说chunks [0]和特定的lambda值。因此,在这种情况下,输出应为数据帧中具有CHUNK_NAME =‘300_321’和LAMBDA = lambda1的所有行。每个返回的Beta值将有n行。但是相反,我得到了以下错误。解决该问题的任何帮助将不胜感激。 问题答案: 的优先级高于。写:

  • 测试变量的常用方法是检查它是否引用singletone: 根据PEP-8,建议将此方法作为检查的唯一方法: 与None之类的单例进行比较时,应始终使用is或is,永远不要使用相等运算符。 虽然有时我发现以下测试在不同的来源: 这种方式看起来不错,但是我不太明白为什么简单易读的结构可以被所取代。它在某些情况下更有用,还是指代码风格? UPD:使用我发现非常有用(到目前为止):

  • 问题内容: 我有以下代码,并收到上述错误。由于我是python的新手,因此无法理解这里的语法以及如何解决错误: 问题答案: 有一种从日期时间转换为日期的方法。 要进行相反的转换,可以使用此功能

  • 我的问题是"为什么?:" 这些数组完全相同。 我的最小示例并没有再现这一点: 这个也没有: 我不知道为什么这些不平等。还有一个额外的问题,我如何比较它们? 我需要一种有效的方法来检查aaa是否在堆栈aa中。 我没有在aa中使用

  • 问题内容: 我想知道是否存在以下有效用例: 接受类型为where 的集合似乎是一种常见的模式(请参见Collections中的许多示例)。 但是,与基类进行比较时,在技术上似乎无法履行合同,因为无法确保另一类不会通过矛盾的比较来扩展基数。考虑以下示例: 我们有两个类,它们使用不遵循共同规则的比较进行扩展(如果存在共同规则,则几乎可以肯定在中实现)。但是,下面的破碎类将被编译: 只接受不安全吗?还是

  • 我对泛型类型有点无知,希望得到一些澄清。在我Java的教科书中,为我们提供了一个mergesort程序: 我正在尝试实现上述算法。经过一些研究,我决定实例化一个默认比较器,并将其传递给mergeSort()函数。然而,我在尝试传入数组时遇到了问题。Eclipse IDE中的错误是mergeSort(K[],Comparator)方法 下面是我的main方法和DefaultComparator方法的