divebomb潜水分类算法
divebomb的Python项目详细描述
divebomb
divebomb是一个python包,它使用pandas将深度的时间序列划分为单个潜水。潜水被描述为dive
或deepdive
取决于动物。潜水
类用于经常浮出水面的动物,如海豹和鲸鱼。"深海潜水"类用于不常见的浮出水面的动物,如鲨鱼。
利用主成分分析法将潜水剖面降为8维。Guassian混合模型是使用这些变量生成的 利用最小贝叶斯信息准则确定最优聚类数。跳水被分成若干组 聚集层次聚类(来自sklearn)。然后,这些数据将通过ipython笔记本显示或保存到按群集组织的netcdf文件中。
文档
官方文档位于此处:http://divebomb.readthedocs.io/en/latest/
跳水然后使用以下属性对adive
进行分析:
最大深度
-潜水中的最大深度潜水开始
-潜水中第一个点的时间戳下潜结束
-下潜最后一点的时间戳底端开始
-动物到达深度时潜水中第一个点的时间戳td_bottom_duration
-一个TimeDelta对象,包含动物在深度的持续时间(秒)td_下降持续时间
-包含动物下降持续时间(秒)的TimeDelta对象td_ascent_duration
-一个TimeDelta对象,包含动物上升的持续时间(秒)td_surface_duration
-一个TimeDelta对象,包含动物在表面的持续时间(秒)底部方差
-动物在下潜时深度的方差潜水方差
-整个潜水深度的方差。下降速度
-下降的平均速度上升速度
-下降的平均速度峰值
-潜水剖面中的峰值数左倾斜
-一个1或0的布尔值,表示俯冲是否左倾斜向右倾斜
-布尔值为1或0,表示俯冲是否向右倾斜无扭曲
-一个1或0的布尔值,指示跳水是否没有扭曲
深潜
然后使用以下属性对adeepdive
进行分析:
最大深度
-潜水中的最大深度最小深度
-潜水的最大深度潜水开始
-潜水中第一个点的时间戳下潜结束
-下潜最后一点的时间戳td_total_duration
-包含潜水持续时间的时间增量(从1970-01-01开始以秒为单位)深度方差
-整个潜水深度的方差。平均垂直速度
-动物在整个潜水过程中的平均速度,负值表示向上运动平均下降速度
-任何向下运动的平均速度为正值平均上升速度
-任何上升运动的平均速度为正值下降次数转换
-在潜水期间,动物移动的次数和距离下降任何距离上升过渡次数
-在潜水期间,动物的移动次数和上升距离总下降距离e>-以米为单位的总绝对距离,在该距离内,卫星向下移动
总上升距离
潜水深度的总体变化
-潜水期间最小深度和最大深度之间的差异td_time_at_depth
-动物在垂直运动最深部分(85%深度)停留的时间(秒)td_time_pre_depth
-垂直运动最深部分(85%深度)之前的持续时间(秒)td_time_post_depth
-垂直运动最深部分(85%深度)后的持续时间(秒)峰值
-潜水剖面中的峰值数左倾斜
-一个1或0的布尔值,表示俯冲是否左倾斜向右倾斜
-布尔值为1或0,表示俯冲是否向右倾斜无扭曲
-一个1或0的布尔值,指示跳水是否没有扭曲
表面阈值
表面阈值用于在动物表面上定义被认为在表面的深度窗口。surface\u threshold
参数默认为0
,但可以在profile\u dive()
函数中更改。例如,对于长度~2
米的动物,可能会传递surface\u threshold=2
。表面阈值始终以米为单位。
深度阈值
深度阈值用于dive
和deepdive
类。参数是一个介于0
和1
之间的值,它决定了当一只动物被认为是在潜水的底部时的窗口。默认值为0.15
这意味着相对深度的底部15%
被认为位于底部。at_depth\u thresold
始终为表示百分比的0
和1
之间的值。
倾斜被定义为dive
类在下降或上升时间上的任何一种方式的差异,以及deepdive
在深度前或深度后时间上的任何差异。选择这种方法是因为研究人员发现,当两个值之间存在任何差异时,偏斜的表示最为准确。
时间戳
输入时间戳应采用日期时间格式。从1970-01-01开始,输出时间戳以秒为单位。
每个netcdf文件都将时间单位保存为一个属性作为提醒。所有以td
开头的潜水属性都是
以秒为单位的持续时间。时间
、潜水开始
、潜水结束
和底部开始
将使用上述单位。
netcdf4库有一个num2date
函数,可以将值转换回datetime对象。
divebomb
divebomb是一个python包,它使用pandas将深度的时间序列划分为单个潜水。潜水被描述为dive
或deepdive
取决于动物。潜水
类用于经常浮出水面的动物,如海豹和鲸鱼。"深海潜水"类用于不常见的浮出水面的动物,如鲨鱼。
利用主成分分析法将潜水剖面降为8维。Guassian混合模型是使用这些变量生成的 利用最小贝叶斯信息准则确定最优聚类数。跳水被分成若干组 聚集层次聚类(来自sklearn)。然后,这些数据将通过ipython笔记本显示或保存到按群集组织的netcdf文件中。
跳水然后使用以下属性对adive
进行分析:
最大深度
-潜水中的最大深度潜水开始
-潜水中第一个点的时间戳下潜结束
-下潜最后一点的时间戳底端开始
-动物到达深度时潜水中第一个点的时间戳td_bottom_duration
-一个TimeDelta对象,包含动物在深度的持续时间(秒)td_下降持续时间
-包含动物下降持续时间(秒)的TimeDelta对象
td_ascent_duration
-一个TimeDelta对象,包含动物上升的持续时间(秒)td_surface_duration
-一个TimeDelta对象,包含动物在表面的持续时间(秒)底部方差
-动物在下潜时深度的方差潜水方差
-整个潜水深度的方差。下降速度
-下降的平均速度上升速度
-下降的平均速度峰值
-潜水剖面中的峰值数左倾斜
-一个1或0的布尔值,表示俯冲是否左倾斜向右倾斜
-布尔值为1或0,表示俯冲是否向右倾斜无扭曲
-一个1或0的布尔值,指示跳水是否没有扭曲深潜
然后使用以下属性对adeepdive
进行分析:
最大深度
-潜水中的最大深度最小深度
-潜水的最大深度潜水开始
-潜水中第一个点的时间戳下潜结束
-下潜最后一点的时间戳td_total_duration
-包含潜水持续时间的时间增量(从1970-01-01开始以秒为单位)深度方差
-整个潜水深度的方差。平均垂直速度
-动物在整个潜水过程中的平均速度,负值表示向上运动平均下降速度
-任何向下运动的平均速度为正值平均上升速度
-任何上升运动的平均速度为正值下降次数转换
-在潜水期间,动物移动的次数和距离下降任何距离上升过渡次数
-在潜水期间,动物的移动次数和上升距离总下降距离
-总绝对距离,单位为米,飞机向下移动总上升距离
潜水深度的总体变化
-潜水期间最小深度和最大深度之间的差异td_time_at_depth
-动物在垂直运动最深部分(85%深度)停留的时间(秒)td_time_pre_depth
-垂直运动最深部分(85%深度)之前的持续时间(秒)td_time_post_depth
-垂直运动最深部分(85%深度)后的持续时间(秒)峰值
-潜水剖面中的峰值数左倾斜
-一个1或0的布尔值,表示俯冲是否左倾斜向右倾斜
-布尔值为1或0,表示俯冲是否向右倾斜无扭曲
-一个1或0的布尔值,指示跳水是否没有扭曲
表面阈值
表面脱粒机d用于在动物表面上定义被认为是在表面的深度窗口。surface\u threshold
参数默认为0
,但可以在profile\u dive()
函数中更改。例如,对于长度~2
米的动物,可能会传递surface\u threshold=2
。表面阈值始终以米为单位。
深度阈值
深度阈值用于dive
和deepdive
类。参数是一个介于0
和1
之间的值,它决定了当一只动物被认为是在潜水的底部时的窗口。默认值为0.15
这意味着相对深度的底部15%
被认为位于底部。at_depth\u thresold
始终为表示百分比的0
和1
之间的值。
倾斜被定义为dive
类在下降或上升时间上的任何一种方式的差异,以及deepdive
在深度前或深度后时间上的任何差异。选择这种方法是因为研究人员发现,当两个值之间存在任何差异时,偏斜的表示最为准确。
时间戳
输入时间戳应采用日期时间格式。从1970-01-01开始,输出时间戳以秒为单位。
每个netcdf文件都将时间单位保存为一个属性作为提醒。所有以td
开头的潜水属性都是
以秒为单位的持续时间。时间
、潜水开始
、潜水结束
和底部开始
将使用上述单位。
netcdf4库有一个num2date
函数,可以将值转换回datetime对象。