我在 pandas 中进行了一个非常简单的计算,但结果是错误的:
vysledek["Market cap EBITDA multipl last 4 Q"] = vysledek["Market Capitalization"] / vysledek[ "EBITDA last 4 quarters"]
vysledek.loc[(vysledek.CP == "GRPN") & (vysledek.DATUM == "2024-06-20")][["CLOSE", "Share Issued", "Market Capitalization", "EBITDA last 4 quarters", "Market cap EBITDA multipl last 4 Q"]]
市值 | 过去 4 个季度的 EBITDA | 过去 4 季度 EBITDA 市值倍数 |
---|---|---|
581665650.50 | 81000000.00 | 166.20 |
过去 4 季度的市值 EBITDA 乘数应为 7,1。
列的数据类型是浮点数。
我检查了数据类型。我还尝试调查“市值”列,因为它是由数据透视表创建并连接到 vysledek 表。
由于 166.20 ≈ 581665650.50 / 3500000.00,我猜想也许您在打印该行之前以某种方式更改了“EBITDA 最近 4 个季度”列的值。
Python 数据帧是通过引用传递的,因此任何改变作为参数传入的数据帧内的值的中间函数也会改变原始数据帧本身。
如果您粘贴整个代码片段,我们可以帮助您进一步调试。