当前位置: 首页 > 面试题库 >

Numpy.dot TypeError:无法根据规则“安全”将数组数据从dtype('float64')转换为dtype('S32')

苍宝
2023-03-14
问题内容

为什么在使用时出现此错误np.dot(a,b.T)

TypeError: Cannot cast array data from dtype('float64') 
               to dtype('S32') according to the rule 'safe'

a和b是类型numpy.ndarray。我的NumPy版本是1.11.0。


问题答案:

只需从BrenBarn和Warren Weckesser的输入中提供一个应运行的代码段即可(通过将字符串转换为float):

a = map(lambda x: float(x),a)
b = map(lambda x: float(x),b)
np.dot(a,b.T)

或更简单@JLT建议

a = map(float,a)
b = map(float,b)
np.dot(a,b.T)

但是正如Warren Weckesser所说的那样,您应该检查数组的类型,很可能其中一个已经包含浮点数。



 类似资料:
  • 问题内容: 请考虑以下情况: 我本来希望有一个允许将错误值(例如that )转换为s的转换的选项。有没有办法做到这一点? 问题答案: 使用[](http://pandas.pydata.org/pandas- docs/stable/generated/pandas.to_numeric.html)与 如果需要填写,请使用。 注意,在可能的情况下,将尝试将浮点型转换为整数。如果不需要,请删除该参数

  • 问题内容: 作为我正在研究的更广泛程序的一部分,我最终得到了带有字符串,3D坐标等混合在一起的对象数组。我知道对象数组与结构化数组相比可能不是很喜欢,但是我希望能够解决此问题而无需更改很多代码。 假设数组obj_array的每一行(具有N行)的格式为 现在,我正在尝试加载该对象数组并切片3D坐标块。到这里为止,一切都可以通过简单地让我们说出就可以了。 但是结果也是一个对象数组,当我想用​​以下方法

  • 我正在尝试创建一个受密码保护的聊天室,并以用户为例回答: Firebase:存储房间密码的方法 问题是,鉴于答案中的规则集,我不知道如何推送新数据。我的规则是这样的: 所以现在我需要一个新的聊天室。但如果我称之为: 它失败了,因为我没有写入规则来推送到聊天室/$uid。如果我这么做。 用这样的规则推送新数据的正确方法是什么?

  • 问题内容: 在我的Tensorflow神经网络开始训练之前,会打印出以下警告: 警告:tensorflow:Layer my_model正在将输入张量从dtype float64转换为float32层的dtype,这在TensorFlow 2中是新行为。该层具有dtype float32,因为其dtype默认为floatx。如果打算在float32中运行此层,则可以安全地忽略此警告。 如有疑问,仅

  • 我正在尝试将RDD转换为数据帧,但失败并出现错误: org.apache.spark.SparkException:由于阶段失败而中止作业:阶段2.0中的任务0失败4次,最近一次失败:阶段2.0中丢失任务0.3(TID 11,10.139.64.5,执行器0) 这是我的代码:

  • 我创建了一个应用程序,它使用Firebase实时数据库。我对安全规则有一个很大的问题。我的用户不需要登录使用应用程序,他们可以发送数据到数据库,无需任何身份验证。例如:这是一个简单的游戏,他们可以互相玩,然后他们可以保存分数。我想创建一个安全的数据库,但是任何人都可以写