numpy np.log的问题

y4ekin9u  于 2023-08-05  发布在  其他
关注(0)|答案(1)|浏览(148)

我有一个从Pandas那里得到的无聊的数组。我试图对它的每个元素执行np.log(自然对数),但它给了我错误。
第一个月
数组如下所示。

[5.810785984999995 5.666261181666755 5.577470475833309 7.967268425833254
 8.298006562222156 8.974100307777746 8.553072009444406 9.059574381388813
 9.055145143654158 8.770924936944482 8.52566836194444 8.21766430611109]

字符串
该数组来自pandars Dataframe ,使用以下代码:(仅供参考,根据评论中的要求)

flag = df.iloc[0:12,7].to_numpy()


当我尝试

print (np.log(flag))


但是当我尝试

a = np.array([1.35,2.49,3.687])
print (np.log(a))


它工作正常。这些仍然是浮点数据类型吗?所以我不知道问题出在哪里,也不知道该如何解决。
在一天结束的时候,我希望得到数组的自然对数。“

rbl8hiat

rbl8hiat1#

数组中的元素似乎不是np.log函数的适当数据类型。尽管数组中的元素可能看起来是浮点数,但它们可能具有不同的数据类型,从而导致错误。
在应用log之前,可以尝试使用astype(float)将数组中的元素显式转换为float数据类型:

flag = df.iloc[0:12, 7].to_numpy().astype(float)
np.log(flag)

字符串

相关问题