首页 > 解决方案 > 从列表中创建总和列表

问题描述

我正在研究实验数据,我创建了一个从 45 °C 到 5 °C 再到 45 °C 的温度曲线。由于记录了从 45°C 到 5°C 的冷却和从 5°C 到 45°C 的加热,因此将数据绘制成一个循环。但是因为我需要情节出现“按时间顺序”,所以每个温度都需要是唯一的。

该图像显示了我需要的视觉解释。 视觉解释

因此,我所做的是使用 numpys“diff”函数从每个连续的温度间隔中获取差异。到目前为止,一切都很好。现在为了制作一个有用的情节,我需要以某种方式创建一个新列表,其中每个项目都是之前项目的总和。

我正在寻找的一个小例子:

my_list = [1,2,5,1,4,2,3]
#some operation
result_list = [1,3,8,9,13,15,18]

如果有人知道如何做到这一点或者有更聪明的想法如何完成工作,那就太好了!

标签: pythonpandasnumpy

解决方案


由于这个问题被标记numpy但由于某种原因没有人发布 numpy 解决方案......使用numpy.cumsum. :)

>>> my_list = [1,2,5,1,4,2,3] # could also be a numpy array
>>> np.cumsum(my_list)
array([ 1,  3,  8,  9, 13, 15, 18])

推荐阅读