python中的sqrt和浮点数据

2024-09-27 23:23:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码中有一些问题 其结果错误“AttributeError:“Series”对象没有属性“float”

我需要解决这个问题的办法

我的代码

def calculateED (pdX, pdY):
arg = (((pdX['NormalTemp']-pdY[0])**2)+
    ((pdX['NormalHumidity']-pdY[1])**2)+
    ((pdX['NormalOutlook']-pdY[2])**2)+
    ((pdX['NormalWindy']-pdY[3])**2)).float()
pdX['ED']= math.sqrt(arg1)
return pdX

dataTest = [64.0,65.0,1.0,1.0]
ngitung = calculateED(dataset, dataTest)
ngitung.sort_values(by=['ED'])

但是在运行这个代码之后,我遇到了一些问题

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-21-034dd0366562> in <module>
      1 dataTest = (64.0,65.0,1.0,1.0)
      2 #dataTest2 = [72.0,95.0,3.0,0.0]
----> 3 ngitung = calculateED(dataset, dataTest)
      4 #ngitung2 = calculateED2(dataset, dataTest2)
      5 ngitung.sort_values(by=['ED'])

<ipython-input-15-5ae8a365490e> in calculateED(pdX, pdY)
      1 def calculateED (pdX, pdY):
----> 2     arg = (((pdX['NormalTemp']-pdY[0])**2)+
      3         ((pdX['NormalHumidity']-pdY[1])**2)+
      4         ((pdX['NormalOutlook']-pdY[2])**2)+
      5         ((pdX['NormalWindy']-pdY[3])**2)).float()

c:\users\windows\appdata\local\programs\python\python39\lib\site-packages\pandas\core\generic.py in __getattr__(self, name)
   5463             if self._info_axis._can_hold_identifiers_and_holds_name(name):
   5464                 return self[name]
-> 5465             return object.__getattribute__(self, name)
   5466 
   5467     def __setattr__(self, name: str, value) -> None:

AttributeError: 'Series' object has no attribute 'float'

Tags: 代码nameinselfreturndeffloatdataset
1条回答
网友
1楼 · 发布于 2024-09-27 23:23:01

根据这项{a1}:

numpy functions require float type argument explicity

例如:

import numpy as np
your_array = your_array.float()
output = np.exp(your_array)

就你而言:

def calculateED (pdX, pdY):

    argument = ((pdX['NormalTemp']-pdY[0])**2)+
    ((pdX['NormalHumidity']-pdY[1])**2)+
    ((pdX['NormalOutlook']-pdY[2])**2)+
    ((pdX['NormalWindy']-pdY[3])**2).float()

    pdX['ED']= np.sqrt(argument)

    return pdX

相关问题 更多 >

    热门问题