python中delta是什么意思_如何使用python计算Delta F/F?

为了分析实验数据,我最近自学了python。因此,我在很多方面都很无知。我已经设法使我的分析对某些文件有效,但在某些情况下,它崩溃了,我认为这是错误编程的结果。在

目前我导出一个包含3个numpy数组的文件。其中一个数组是我的信号(浮点值从-10到10)。我想做的是将这个数组中的每一个数据规范化为处理它的一系列值。(即,30001值必须减去前面3000个值的平均值,然后将差值除以相同的平均值(前面的3000个值)。我的数据是以100Hz的速率收集的,因此要获得alst 30的标准化,我必须使用前面的3000个值。在

就目前情况来看,我是如何做到这一点的:

这将信号存储到变量photosignalphotosignal = np.array(seg.analogsignals[0], ndmin=1)

这是我用来得到30秒移动窗口上的△F/F的部分

^{pr2}$

下面将3000个值添加到开头,以保持数组的长度不变,因为稍后我必须将其锁定到另一个长度相同的列表中holder =list(range(3000))

normalizedphotosignal = holder + normalizedphotosignal

我注意到,在某些文件中,这段代码给了我一个错误,因为它说“切片”是空的,因此它不能创建一个平均值。在

我想也许有一个更好的方法可以完全避免这个问题。或者这是解决这个问题的正确方法?在

所以我尝试了这个解决方案,但是速度很慢,但是它仍然给我“空切片错误”。

我查看了移动平均线,发现了这个方法:def running_mean(x, N):

cumsum = np.cumsum(np.insert(x, 0, 0))

return (cumsum[N:] - cumsum[:-N]) / N

然而,我很难适应我想要的输出。即(x-运行平均值)/运行平均值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值