Python 如何通过迭代数据帧来填充函数参数
我试图迭代数据帧“indicators”来填充函数“Rangos”,它应该会返回一个每行一个数据帧的元组 这是我的代码:Python 如何通过迭代数据帧来填充函数参数,python,pandas,dataframe,for-loop,iteration,Python,Pandas,Dataframe,For Loop,Iteration,我试图迭代数据帧“indicators”来填充函数“Rangos”,它应该会返回一个每行一个数据帧的元组 这是我的代码: import pandas as pd def Rango(Estandar, Pronostico, Meta): Tolerancia = float(Estandar*0.6)+float(Meta*0.2)+float(Pronostico*0.2) x = float(Tolerancia/3) n_3 = Tolerancia n
import pandas as pd
def Rango(Estandar, Pronostico, Meta):
Tolerancia = float(Estandar*0.6)+float(Meta*0.2)+float(Pronostico*0.2)
x = float(Tolerancia/3)
n_3 = Tolerancia
n_2 = float(Tolerancia - x)
n_1 = (n_2 - float(n_2/3))
n_4 = (n_3 + x)
n_5 = (n_4 + float(n_4/3))
rangos = pd.DataFrame({"1": [n_1],
"2": [n_2],
"3": [n_3],
"4": [n_4],
"5": [n_5]})
return rangos
indicadores = pd.DataFrame({ "Estandar": [162, 150, 170],
"Pronostico": [165, 163, 150],
"Meta": [155, 170, 145]})
In[91]: indicadores
Out[91]:
Estandar Pronostico Meta
0 162 165 155
1 150 163 170
2 170 150 145
def rangos(Dataset):
for index, row in indicadores.iterrows():
x = (Rango(row['Estandar'], row['Pronostico'], row["Meta"]))
y = (Rango(row['Estandar'], row['Pronostico'], row["Meta"]))
z = (Rango(row['Estandar'], row['Pronostico'], row["Meta"]))
return x,y,z
x = rangos(indicadores)
In[94]: x
Out[94]:
( 1 2 3 4 5
0 71.644444 107.466667 161.2 214.933333 286.577778,
1 2 3 4 5
0 71.644444 107.466667 161.2 214.933333 286.577778,
1 2 3 4 5
0 71.644444 107.466667 161.2 214.933333 286.577778)
每个数据帧的结果应该不同
希望你能帮助我
提前谢谢 不清楚您期望的输出是什么。。。你能提供一个你期望的输出的例子吗?嗨!我刚刚修改了be clearerIn
rangos
函数的问题,返回语句在for循环中!!!。是我的错。我已经改正了,但结果还是一样的:(