回归模型,其响应变量是通常发生年度事件的一年中的一天


13

在这种情况下,我指的是湖泊结冰的那一天。该“冰上”日期每年仅发生一次,但有时根本不发生(如果冬天温暖的话)。因此,在一年中,湖泊可能在第20天(1月20日)结冰,而在另一年,它可能根本不会结冰。

目的是找出冰冻日期的驱动因素。

预测因素将是每年的秋季/冬季气温。年份可能是长期线性趋势的预测指标。

1)整数“一年中的一天”是否是合理的响应变量(如果不是,则是什么?)?

2)如何处理湖泊永不结冰的年份?

编辑:

我不知道这里的礼节是什么,但我认为我会张贴收到的建议的结果。这是论文,开放获取。感谢@pedrofigueira和@cboettig,我对使用的方法获得了很好的反馈。当然,错误是我自己的。


您拥有什么样的数据集?在一年中的所有日子都采取措施?
Donbeo 2014年

@Donbeo,结冰每年发生一次,因此响应变量处于年度分辨率。其他数据也以每年一次的频率出现,但是在某些情况下可以转换为更高频率的数据。
rbatt 2014年

您要考虑哪个日期?我之所以这样问,是因为统计建模永远不会是对或错,而是有用或无用的。因此,对于统计结果的使用很重要,对于目标变量是否完全有用的见解也很重要。例如,如果湖在10月已经用薄薄的冰盾冻结了,但是在同一周融化而在冬天冬天再也没有冻结怎么办?也许您可以进行分析以预测何时开始使用雪地轮胎等产品?这可能会提示您对第二个问题的有用答案。
HorstGrünbusch2014年

感谢您的想法,@HorstGrünbusch。我想知道气候变化如何影响冰,因为在水生系统上加盖会影响很多事情(气体交换,光照等)。唯一可用的冰数据是这些冰上日期(不是厚度等)。
rbatt 2014年

Answers:


4

我认为可以将“一年中的某天”视为对多元回归的响应变量。为了处理湖泊从未结冰的年份,我只考虑冻结的天数大于可观察到的下限,例如,对应于冰含量开始融化(或完全融化)的那一天。非常保守)。从理论上讲,它应该在那之后冻结,或者在那之后可以冻结,但是我们不知道。这样,如果允许的冻结日期晚于最新的可观察日期,可以使用在不同参数上收集的数据来了解冻结日期如何依赖于冻结日期。然后,您可以使用Tobit模型同时处理冻结天数(对应于“正常”数据点)和下限(对应于极限,并因此进行删失回归)。

为了在分析中正确包含测得的下限,您可以使用审查的回归模型,在该模型中,因变量在下限值处具有截止值。上述Tobit模型适用于这种情况;它假设存在一个不可观察的(潜在的)因变量,在我们的情况下,如果冬天无限期延长,则它对应于冻结日期。然后,在没有下限的情况下,可观察到的因变量(即测得的冻结日期下限)等于潜变量,否则等于下限。yiyiLi

yi={yiif¯Li(i.e.yi<Li)LiifyiLi

Tobit模型在处理逐观察检查中的应用产生了以下形式的对数似然函数

L=iyi<Liln[ϕ(yiXijβjσ)/σ]+iyiLiln[Φ(LiXijβjσ)]

其中和分别表示标准正态分布的概率函数和累积密度函数。索引基于观测值,针对自变量。线性回归的解决方案是最大化对数似然函数的参数(包括截距)的集合。Φ Ĵ β Ĵϕ(.)Φ(.)ijβj


3
“一年中的一天”的大问题涉及如何对其进行编码。通常,它表示为到之间的儒略日,或者表示为到的十进制年份,但是这都不适合,因为这是一个循环变量:例如,儒略日紧随天。因此,特别地,“上限”和“下限”是没有意义的。(关于如何处理leap年还有一个小问题;可以通过各种简单的方法解决。)另一个大问题涉及不发生冻结的处理年:这不会丢失或检查数据。365 0 1 1 3651365011365
ub

1
我认为,如果可以将每年视为一个独立的实验,即如果该实验没有记忆,并且可以认为一年中的冻结日期与该日期完全独立,那么下限的概念将保留其含义。以前的; 那么它应该仅取决于相关年份的参数。如果是这种情况,那么据我所知,该变量不是循环变量。
pedrofigueira 2014年

1
是的,在某些情况下,这种临时技术可以起作用。如果(a)事件总是每年发生,并且(b)事件在可预测的日期附近紧密分散,则可以通过适当选择年份的来源来解决问题。但是,如果分散程度较大(在这种情况下可能就是这种情况),或者在最极端的情况下,甚至可能完全没有该事件,那么您确实需要应用循环(“定向”)统计方法。顺便说一句,串行相关性或独立性是一个单独的问题。
ub

2
我认为上限应尽可能精确地确定。如果可以的话,Tobit分析变得更有见识。我建议将DoY作为下限(可能在之前发生冻结,但之前未观察到/无法观察到),您认为超出该范围就无法检测到融化。也许可以通过查看水冻结所需的(P,T)来完成,并假设压力恒定,选择一年中的最后一个局部最小值或类似的值。我认为,此时的问题比统计性问题更具物理性(但无论如何还是非常有趣的)。
pedrofigueira 2014年

2
@rbatt我认为这个答案是明智的。开始日期是任意的,您可以从其他日期开始,也可以使用负数;我没看到问题。通过按一年中的日期进行编号,圆度得到照顾。
cboettig 2014年

1

一年中的一天是一个明智的预测变量,为此,我认为按照@pedrofigueira的建议进行处理是明智的。

对于其他预测变量,您可能需要注意如何表示时间。例如,假设您每天都有气温-您将如何模拟气温来预测冰天?我认为比较一年中同一天的样本是不够的。

在任何此类分析中,我认为写下您认为合理的数据生成模型(可能会提供一些物理学指导)可能会有所帮助。例如,一个合理的模型可能是对低于冰点的天数进行积分,并且当该积分超过阈值时(例如与湖泊的热质量有关),就会发生结冰现象。然后,您可以从这种模型中询问什么是合理的近似值,什么不是。

例如,仅当一年中的一天是温度的良好预测者时,一年中的一天才对该模型起作用。因此,仅知道一年中的某一天,便会获得与冰上阈值相对应的平均年中日数,也许由于年际温度变化而导致其正态分布,因此寻找日中的趋势。一年是完全合理的。

但是,如果您知道诸如白天的气温等其他变量,则可能会面临更直接地处理更为复杂的模型。如果您仅使用年值(最小值?均值?),则将变量用作冰上天气的预测指标似乎也是合理的(与上述相同的论点)。


+1指向物理。如果您无法通过理由解释统计结果,即使它显示为有意义,也可能是虚假的。
HorstGrünbusch2014年

需要明确的是,每年的结局是响应变量……这是我要“预测”的内容(在您的回答中,您在某些地方将其称为“预测变量”)。您对不冻结的年份有任何建议(下面的其他Tobit建议)?
rbatt 2014年

1
@rbatt,很抱歉造成您的困惑。最简单的模型是1D,使用过去发生冰雪的年份作为预测因子。但是,如果您想检测冰上日期的趋势,则可以像您要​​预测的那样,拥有完整的DATE,而不是年份,因为例如2020年的预测可能会与2050
。– cboettig

0

对于此问题,您需要两个响应变量。一个布尔值响应,指示湖泊是否冻结,一个整数响应,给出一年中的某一天,以指标为真为条件。在湖泊结冰的年份中,布尔值和整数都被观察到。在湖泊没有结冰的年份中,会观察到布尔值,而整数则没有。您可以对布尔值使用逻辑回归。一年中某天的回归可以是普通的线性回归。

只要您在给定时间段内连续编号可能的冻结天数,那么一年中的一天的循环性质就不成问题。如果您想知道从哪里开始编号,我建议您测量预测变量的日期。如果希望模型表示因果关系,则必须在所有可能的冻结之前对所有预测变量进行测量。

要处理一年中某天的整数和有界性质,可以使用离散化模型。也就是说,存在一个真实的潜伏值,它会以以下方式生成观察值:如果该值在边界之内,则观察值等于四舍五入到最接近整数的潜伏值,否则该值将被截断为边界。然后可以将潜值本身建模为预测变量加噪声的线性函数。


我了解该方法的前提,但不确定如何实现。我将如何安排数据并估算布尔值/日期的候选驱动因素的影响?在R.我的工作
RBATT

将数据放入一个数据框,其中一列是布尔值,另一列是日期。然后使用:fit1 = glm(冻结〜x,框架,家庭=“二项式”)fit2 = lm(日期〜x,框架)
汤姆·明卡

抱歉,我可以理解“ fit2 = lm(date〜x,frame,subset = Boolean == TRUE)”吗?
塞尔吉奥

那将是两个单独的模型。在以“日期”为响应的模型中,对于水永不冻结的年份,我该怎么办?如果我简单地删除那些年份,那么我会偏颇结果(或严重缩小我观察到的响应范围),因为我有选择地删除了对响应的最极端的观察(即,从不冻结是最极端的冻结日期)。因此,水永远不会冻结的年份应该告诉我们一些有关这些驱动因素对冰冻期的影响的信息。似乎两个模型中的信息都应该合并。
rbatt 2014年

我对将冻结视为布尔变量感到不舒服,因为底层过程无疑比这更连续。
cboettig 2014年

0

您所拥有的是事件发生时间数据,也称为生存分析。那不是我真正的领域,所以在这里我不作详细回答。谷歌搜索“事件发生时间数据”或“生存分析”将为您带来很多成功!

一个很好的起点可以是有关Venables / Ripley:MASS中生存分析的第(13)章,或者是John D. Kalbfleisch,Ross L. Prentice(auth。)撰写的经典《故障时间数据的统计分析,第二版》。

编辑,扩展答案

作为生存分析的替代方法,您可以通过序数逻辑回归进行近似。例如,在您的第一个冻结日期的示例情况下,定义一些日期,将其设置为“已冻结于或之前已冻结”状态,即0(不冻结),1(冻结)。很好地适应了多年而不冻结,您只需拥有一个全零响应向量。如果您选择的日期是,

1:08   15:08 1:09 15:09 1:10 15:10 1:11 15:11 1:12  15:12  1:01  15:01
and the actual date of first freezing was  17:11, then your observed vector will be
0       0    0    0     0    0     0    0      1     1     1      1

通常,所有响应向量的初始块均为零,然后是一个1。然后,可以将其与有序逻辑回归一起使用,以获得每个日期的估计冻结概率。绘制该曲线将给出生存曲线的近似值(在这种情况下,生存变为“尚未冻结”)。

EDIT

由于河流(几乎)每年都在冻结,因此您还可以将您的数据视为经常性事件。在这里找到我的答案: 寻找精神病再入院的重要预测指标

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.