pd系列中具有两个或多个变量的函数

问题描述

我有两个Series和一个函数,该函数取决于两个变量:

import pandas as pd

solar_radiation = pd.Series([0,100,300,500,400,200,0])
veLocity = pd.Series([10,20,5,3,2,1,10,4,1])

def Pasqul_stability(solar_radiation,veLocity):
    if solar_radiation<1:
        return "stable"
    elif solar_radiation>1   and solar_radiation<350 and veLocity>5:
        return "stable"
    elif solar_radiation>350 and solar_radiation<750 and veLocity>6:
        return "stable"
    else:
        return "unstable"

我想在功能之后得到一个系列:

stablity = ['stable','stable','unstable','stable']

当我尝试使用时

stablity=Pasqul_stability(solar_radiation,veLocity)

我得到一个错误。我应该如何解决我的问题?

解决方法

您可以尝试以下方法:

stability = []
for SR,V in zip(solar_radiation,velocity):
    stability.append(Pasqul_stability(SR,V))

print(stability)

['stable','stable','unstable','stable']