我有一个包含列表的列表,每个列表代表一个公司,其中包含EBITDA值。现在,我想借此回报的日志,并创建一个具有使用所有日志返回一个新的列表:Python:将值添加到列表中,然后将此列表附加到列表中
ln(ebitda t/ebitda t-1)
期望的结果将是保持每家公司的结果放在一起,像这样的列表内的列表:
[[0.69314718055994529, 0.40546510810816438, 0.28768207245178085], [0.18232155679395459, 0.15415067982725836, 0.13353139262452257]]
但到目前为止,我得到:
[0.69314718055994529, 0.40546510810816438, 0.28768207245178085, 0.18232155679395459, 0.15415067982725836, 0.13353139262452257]
我发现了一种对SO通过每个列表循环,使计算象下面这样:
from itertools import zip_longest
import numpy as np
l = [[1, 2, 3, 4], [5, 6, 7, 8]]
logs = []
for num in l:
for x, y in zip_longest(num[1:], num[0:-1]):
logs.append(np.log((x/y)))
但是,为了使结果可用,我需要能够让他们回到他们自己的名单,我不知道如何做到这一点。
感谢您的阅读和任何帮助表示赞赏。
你的意思是通过让他们回到自己的名单? – gggg
@gggg在我的代码中,最终的结果是所有的日志返回被合并成一个大列表。有了一个巨大的清单,没有简单的方法来计算每个公司的平均值或标准。我需要每个公司在他们自己的列表中的回报,现在可以与Adirio的代码一起使用。 –