【发布时间】:2023-03-19 22:25:01
【问题描述】:
我是Python 的新手,在库存管理职位上工作。
库存管理中的一件重要事情是计算安全库存。
所以,这就是我想要实现的目标。
我导入了一个包含 3 列的文件; FR、sigma 和 LT 用于 3 行。请参阅下面的代码和输出:
代码:
import pandas as pd
df = pd.read_excel("Desktop\\TestPython4.xlsx")
xcol=["FR","sigma","LT"]
x=df[xcol].values
输出: snapshot
为了计算安全库存,我有以下(简化的)公式;
CDF(FR)*sigma*sqrt(LT)
其中CDF 是正态分布的累积分布函数,FR 是一个介于 0 和 1 之间的数字(因此众所周知的 z 值是输出)。
我想输出一个带有显示安全库存的额外列的文件。
为此,我使用以下代码创建了一个类safetystock:
class Safetystock:
def __init__(self,FR,sigma,LT):
self.FR = FR
self.sigma = sigma
self.LT = LT
pass
def calculate():
SS=st.norm.ppf(FR)
return print(SS*sigma*np.sqrt(LT))
pass
然后我做了变量:“输出”
Output = Safetystock(df.FR,df.sigma,df.LT)
我说需要考虑文件中的数据。
然后我给df添加了一列,命名为output,需要包含变量“Output”:
df["output"]=Output
现在,当我想打电话给 df 时,它给了我这个:
我做错了什么?
干杯,
史蒂文
【问题讨论】:
-
它的工作方式与应有的完全一样,您将 Dataframe 上的类实例保存为输出。可变输出是什么意思?顺便说一句,传递 init?是什么原因?
-
可变输出 = 每行输出(因此 3 个输出显示基于 FR、sigma 和 LT 的安全库存)。传递 init:不记得了。但即使没有它也行不通
标签: python-3.x inventory-management