【发布时间】:2017-10-20 04:56:36
【问题描述】:
我目前正致力于在 RStudio 中创建一些函数,其中包含从 2005 年到 2013 年观察到的大约 100,000 个人的数据集。我有一个不平衡的面板,有两个感兴趣的变量——为了简单起见,我们称它们为 x 和 y。
我指定的函数采用以下形式:
z = (mean(x) + mean(y)) / sd(x)
值得注意的是,它是一种正常的 z 分数度量,通常在模型估计的预处理阶段用作归一化技术。
指定函数的目标是计算数据集中每个个体 i 的 z,同时考虑到不同个体观察到的不同周期 T = 1,2...,t。换句话说,在某些情况下,我有 2008-2013 年的数据,而对于其他情况,我有 2006-2010 年的数据。
目前我已将我的功能指定如下:
z1 <- function(x,y) {
(mean(x) + mean(y))/sd(x)
}
当我执行它时:
z1(x,y)
我只得到一个数字作为输出,代表观察总数(大约 150,000 行)的计算。我应该如何编辑我的代码以确保我为我的数据集中的每个人获得一个数字?
我假设我必须使用一个 for 循环来迭代并计算当时一个人的 z 分数,但我不确定在编写我的函数时如何指定它。
【问题讨论】:
标签: r normalization