摘要
意义:光纤光度法(FP)是现代行为神经科学中广泛使用的技术,利用基因编码荧光传感器监测清醒行为动物的神经活动和神经递质。然而,分析光度数据既费力又耗时。
目的:本研究提出了一种通用的FP分析应用——光纤光度分析(FiPhA)。目标是开发一种适用于各种光度测量方法的管道,包括光谱分辨、基于相机和锁相解调等。
方法:FiPhA使用R Shiny框架开发,并提供交互式可视化、质量控制和批处理功能的用户友好界面。
结果:该应用程序简化和优化了分析流程,从而减少了人力和时间需求。它提供了交互式可视化、事件触发平均处理、事件过滤以及质量控制功能。
结论:FiPhA对于处理离散、基于事件的FP数据的行为神经科学家来说是一个有价值的工具。该工具解决了分析此类数据相关的挑战,并提供了一个稳健且用户友好的解决方案,无需手动设计定制分析管道。因此,该应用程序有助于标准化FP分析方法。
引言
监测自由移动动物大脑中的神经传递对于了解实时神经元活动和特定行为事件的相关性至关重要。确定这种关系有助于阐明不同脑区的潜在回路,以及这些回路如何受到各种毒素、疾病等的影响。光纤光度法(FP)是一种监测神经传递的方法,即通过检测细胞群或脑区内的大量荧光信号来记录细胞活动的光学技术。利用病毒载体或转基因方法在细胞体或轴突末梢处对细胞进行荧光标记。虽然FP最初是作为一种测量细胞钙成像的工具而开发,但最近已将其用于检测特定神经递质与荧光标记的突触后受体的结合。由于植入式光学探针和轻质光纤相对较小,FP也可以同时记录多个脑区。
近年来,光纤光度法(FP)在神经科学中的应用越来越广泛,研究人员主要依赖锁相解调系统(例如Tucker David Technology(TDT)光纤测量系统)或其他定制设置。这些系统产生了大量的数据,通常使用自定义的MATLAB或Python脚本进行分析。此后,开发了一些开源测量工具和分析软件包,适用于所有主要操作系统和常用编程语言。这些软件包有助于标准化FP分析,但存在以下问题:(1)这些软件包针对锁相解调系统进行了优化,对其他系统的支持有限或根本不支持;(2)它们可以通过晶体管-晶体管逻辑(TTL)脉冲轻松分析刺激触发事件(例如声音、光线、电击和饮水),但需要额外的数据预处理来分析那些不容易通过TTL脉冲触发的事件(例如冻结、跑轮、梳理、旋转、直立等)。
本研究提出了光纤光度分析(FiPhA)应用程序,使研究人员能够在同一用户界面中分析行为数据和FP数据。FiPhA允许用户导入多种数据格式。本研究已经验证了FiPhA可以分析来自锁相解调系统(TDT光纤测量系统)、相机系统(Plexon多波长光纤测量系统)和光谱分辨系统的数据,允许用户灵活定义事件和感兴趣间隔期间的荧光活动。FiPhA还可以轻松整合使用商业系统收集的行为数据,其优势在于所有这些数据集在导入应用程序之前几乎不需要预处理。此外,FiPhA不仅可以快速对齐行为和FP数据,还可以提供美观的视觉效果。因此,FiPhA的出现有助于标准化FP分析方法。
FiPhA概述
FiPhA是使用RStudio(v2022.x)和R(v4.2.x)开发的。它使用Shiny框架来提供用户界面功能,并使用Plotly包来实现交互式数据可视化。
使用FiPhA应用程序联合分析行为和光度数据的管道如图1所示。该管道包含用于同时分析行为和光度数据的常见步骤,如数据预处理、创建事件触发均值、过滤行为事件以及执行各种数据分析任务。分析功能包括计算事件触发均值、事件间隔的汇总统计及其在箱形图中的可视化,以及以热图的形式描绘事件随时间变化的荧光活动。这些数据可以保存为“.rds”文件以备将来分析,事件触发均值的分析结果则可以导出为“.xlsx”文件。
图1.使用FiPhA进行分析的典型工作流。
数据集
导入记录数据
在FP实验中,实验人员通常使用不同的软件包收集光度测量信号和行为追踪数据。但FiPhA应用程序允许从各种格式(.xlsx、.csv、.txt、.tsq等)导入数据。
光谱分辨光度导入
在分析之前,使用光谱分辨光度系统收集的光度信号必须应用线性解混算法或基于“summary statistic”选项进行分解,以便对感兴趣的信号进行识别。当使用具有重叠发射光谱的荧光团时,可以使用用户定义的波长范围进行最佳信号识别(图2)。FiPhA简化了线性解混步骤,允许导入原始光谱仪文件,设置所选波长行、数据行和采集频率,以及在单个界面中导入特定的光谱仪参考文件。该光谱仪参考文件包含了与实验中收集的荧光信号波长对应的标准荧光光谱。
图2.使用光谱分辨光度系统收集的数据的导入选项。
“summary statistic”选项允许通过应用汇总函数(即曲线下面积、平均值和中位数)创建用户指定波长范围的两个荧光信号的比率,然后自动进行信号去趋势处理。接下来,可以在“datasets”视图的“preview”选项中绘制光谱和行为数据。
锁相解调和相机光度导入
从锁相解调系统(例如TDT光纤测量系统)收集的数据通常以“.tsq”或“.tev”格式保存,可以使用“import”选项卡下拉菜单中的“fiber photometry Gizmo”将其导入FiPhA应用程序。用户可通过“available streams”下拉菜单选择目标目录和所需的荧光通道来指定“.tsq”或“.tev”文件。
一些光纤光度采集系统会将原始数据保存为“xlsx”或“csv”格式的表格数据集。可以使用“import”选项卡下拉菜单中的“tabular dataset”功能将其导入FiPhA应用程序。若使用此功能,需要指定标题行号、数据行号、采集频率和工作簿编号。然后使用“datasets”视图中的“preview”选项卡可视化数据。
使用FiPhA应用程序的先前分析会话可以保存为“.rds”文件,并使用下拉菜单中的“previous session”导入选项重新导入。
预览
将数据导入FiPhA应用程序后,可以在“preview”选项卡中观察记录。然后,添加其他记录只需选择另一个要导入的记录即可,并且这些记录作为列表显示在顶部下拉菜单下。在“preview”选项卡中,记录时间通常呈现在X轴上,但可以在左侧下拉菜单中进行更改。在右侧下拉菜单中可以进行Y轴的操作。使用左右Y轴可以同时查看两个数据集。
信号分析
可以使用“signal analysis”选项卡对给定记录的连续变量进行信号分析和周期成分研究。选择数据集后将生成滞后自相关图、功率谱和频谱图,并提供自定义结果图形的选项(见图3)。滞后-N自相关是信号与其延迟(N个时间点)之间的相关性度量,而功率谱和频谱图能够可视化构成信号的整体单个频率以及这些频率随时间的变化。尽管FP数据是一个慢信号,通常以25-30Hz的频率进行采集,但频谱分析可以揭示在Nyquist频率(大约12-15Hz)或以下的振荡信息。这包括一些重要的频率,如表示慢波睡眠的δ波。
图3.信号分析选项:滞后自相关、功率谱和频谱图。
转换
在导入数据集后,可以将记录与来自外部硬件的其他数据集(例如从视频录像中提取的行为信息)相结合。此功能可在“transform”菜单下找到。对于起始时间不同或以不同采集频率记录的数据集,可以通过最近邻采样行为数据集并将生成的数据连接为新列来进行对齐。
在“transform”菜单下,还可以进行其他操作,包括添加两个数据集(逐行)、重命名数据集或其任何组成变量,以及计算两个数据集变量的比率。在处理大型数据集时,可以同时应用低通滤波器和降采样操作。此外,还可以应用线性缩放转换以调整变量大小,这是重新创建“稳健z比分数”转换的必要步骤。
光漂白/光交换是FP实验中常见的现象,即荧光活性随时间减弱(图4a)。为了解释这种效应,可以使用“detrending”转换选项下的线性或指数模型将活性建模为时间的递减函数。模型参数可以手动指定,也可以使用最小二乘拟合和模型残差估计。然后可以使用去趋势荧光活性(通过从原始值中减去模型的预测值来计算)进行后续分析。使用“create ratio”转换选项可以创建去趋势变量的比率,并在“dataset preview”选项卡中可视化信号(图4)。
图4.等吸收点导入和光漂白/光交换校正。
自定义脚本
熟悉R编程语言的用户可以选择在事件检测之前对导入的数据集进行自定义转换。对话框提供了一个文本字段,供用户在已经设置好的环境中执行代码片段,该环境将数据集作为“data.table”对象进行管理,这是R中标准“data.frame”类的扩展。所做的任何转换都将应用于导入的数据集中。此功能允许在FiPhA工作流中执行其他复杂操作。
事件
二值化、分箱和峰值事件
二值化事件。可以利用数据集中的二进制(类似TTL)指示变量来定义一个事件序列。这类事件对应于从每个上升沿(0到1)过渡到下一个下降沿(1到0)的连续周期。还可以使用反向类型,它执行相同的识别策略,但使用指定变量的逻辑补码。
分箱事件。在某些实验设置中,可能需要将时间序列划分为大小相等的箱,用于峰值计数等任务。该类型由起始时间t和区间长度L参数化。从t开始,每个长度为L的连续区间对应一个新事件。
峰值事件。可以使用峰值检测方法来识别事件,该方法使用长度为L的移动窗口来识别连续变量中超过用户定义阈值的时段。
时间戳事件。对于某些实验设置,使用相同数据集中的变量可能无法恰当地描述事件。在这种情况下,FiPhA允许用户手动输入一组与所需事件相对应的开始/结束时间戳(图5a)。
图5.老鼠听到五种不同音调的事件触发均值。
标准化
FiPhA应用程序根据信号的分布特性提供了三种标准化方法的选择(图5b)。
Z分数。Z分数是用观测值减去感兴趣区间的均值,然后将所得结果除以标准差来计算。这种标准化方法最适用于符合正态分布且不相关的观测值。
ΔF/F。该标准化方法常用于处理FP数据,它表示强度相对于基线期的变化百分比。由于平均值可能对较大值敏感,所以ΔF/F标准化可能不适用于有噪声的信号。
稳健z比分数。通过从观测值中减去感兴趣区间强度变化的中值百分比,并除以中值绝对偏差,可以计算出更稳健的z分数。这种方法对异常观测值不太敏感,但由于其参考期不再以零为中心,因而可能难以解释。
自定义过滤器
通过指定返回逻辑值的有效R表达式(例如,‘(time)’ < 360 & cond == T),可以对数据集中的潜在事件进行条件约束。此外,事件序列定义还可以包括其他过滤器,它们根据信号类型依次修改潜在事件列表。
自定义间隔时间
感兴趣的时间间隔可以在表格中手动指定,其中每个条目指定了名称、参考点以及相对于参考点的起始/结束时间。可用的选项包括事件信号的开始、事件信号的结束、原始事件信号本身,或者通过调整时间间隔的起始时间来确保不会与先前事件或其间隔发生重叠的“起始”时间。
分析
FiPhA中的“analysis”选项使用户能够创建已处理事件序列的几种不同可视化。每个图都突出显示了数据的不同特征,使用户能够在多种不同背景下分析事件(图6)。
图6.用于查看事件触发均值的数据分析选项。
事件热图
在“analysis”选项卡下生成已处理事件的热图。事件被对齐,使得它们的事件信号都从时间零开始,并可根据顺序、总长度或在完整事件或两个指定点之间的曲线下面积对事件进行排序(图6b)。
数据集跟踪(Dataset traces)
同样,可以使用“analysis”选项卡可视化平均事件响应。对于给定的数据集,可以同时绘制多个事件序列。
间隔汇总
在“analysis”选项卡下可以找到包含多个数据集和事件序列中事件间隔汇总值的箱线图。除了平均区间值,还可以绘制中值区间值,以及每个事件的两个时间点之间的曲线下面积值(图6c)。
导出
FiPhA中的“export”选项允许生成包含所有处理过的事件数据的Excel表。包含对应于每个数据集和每个事件列的单独选项卡。还可以包含响应变量名、间隔标签和大量时间戳。可以按时间或间隔类型跨事件对结果列进行对齐,以便于在Excel中比较事件。也可以将活动会话保存为R对象,然后可以在R中重新导入或操作该对象,而无需使用FiPhA(图7)。
图7.FiPhA应用程序中的各种导出选项。
结论
总体而言,FiPhA是一个开源、灵活且多用途的FP分析工具。它与各种光度测量系统数据类型兼容,并且具备强大的可视化工具,支持自定义事件和过滤。虽然最初开发FiPhA是为了提供一种集成的光谱分辨FP方法,但为使其广泛适用于各种光度测定方法和数据格式,研究者付出了大量努力。未来的发展方向包括计划开发一个独立的R包,允许将FiPhA的功能集成到用户脚本中,而不需要Shiny应用程序的交互性。同时,还计划发布可执行格式的FiPhA版本,这对那些不熟悉R和RStudio的人来说将更加友好。此外,研究者将根据社区的需求扩展功能,并提供相应教程和培训,以帮助研究人员更好地利用FiPhA进行光度测量分析。
参考文献:Matthew F. Bridge, Leslie R. Wilson, Sambit Panda, Korey D. Stevanovic, Ayland C. Letsinger, Sandra McBride, and Jesse D. Cushman “FiPhA: an open-source platform for fiber photometry analysis,” Neurophotonics 11(1), 014305, 2024. DOI: 10.1117/1.NPh.11.1.014305
小伙伴们关注茗创科技,将第一时间收到精彩内容推送哦~