我有两个像这样的功能:
def wind_index(result):
if result > 10:
return 1
elif (result > 0) & (result <= 5):
return 1.5
elif (result > 5) & (result <= 10):
return 2
def get_thermal_index(temp, hum):
return wind_index(temp - 0.4*(temp-10)*((1-hum)/100))当我试图像这样应用这个函数时:
df['tci'] = get_thermal_index(df['tempC'], df['humidity'])我得到了一个错误: ValueError:一个系列的真值是不明确的。使用a.empty、a.bool()、a.item()、a.any()或a.all()。
我还能做些什么来使用这些函数为我的DataFrame获得一个新的列呢?
发布于 2019-01-09 12:10:05
您可以使用Series.apply
def get_thermal_index(temp, hum):
return (temp - 0.4*(temp-10)*((1-hum)/100)).apply(wind_index)https://stackoverflow.com/questions/54109761
复制相似问题