【发布时间】:2019-11-16 17:24:23
【问题描述】:
我正在处理一个关于全国迁移的数据集,其中包含以下列:
i birth gender race region urban wage year educ
1 58 2 3 1 1 4620 1979 12
1 58 2 3 1 1 4620 1980 12
1 58 2 3 2 1 4620 1981 12
1 58 2 3 2 1 4700 1982 12
.....
i birth gender race region urban wage year educ
45 65 2 3 3 1 NA 1979 10
45 65 2 3 3 1 NA 1980 10
45 65 2 3 4 2 11500 1981 10
45 65 2 3 1 1 11500 1982 10
i = 个人 ID。他们跟踪一大群人 25 年,记录“区域”(分类变量,1-4)、“城市”(虚拟)、“工资”和“教育”的变化。
如何计算每个受试者在观察期间(25 年期间)内“区域”或“城市”发生变化的总次数(例如:从区域 1 到区域 3 或从城市 0 到 1)?我的数据中也有一些 NA(应该忽略)
预期输出的简化版本:
i changes in region
1 1
...
45 2
i changes in urban
1 0
...
45 2
然后我想总结一下区域和城市的变化次数。
我遇到了这些答案:Count number of changes in categorical variables during repeated measurements 和 Identify change in categorical data across datapoints in R,但我还是不明白。
这是 i=4 的部分数据。
i birth gender race region urban wage year educ
4 62 2 3 1 1 NA 1979 9
4 62 2 3 NA NA NA 1980 9
4 62 2 3 4 1 0 1981 9
4 62 2 3 4 1 1086 1982 9
4 62 2 3 1 1 70 1983 9
4 62 2 3 1 1 0 1984 9
4 62 2 3 1 1 0 1985 9
4 62 2 3 1 1 7000 1986 9
4 62 2 3 1 1 17500 1987 9
4 62 2 3 1 1 21320 1988 9
4 62 2 3 1 1 21760 1989 9
4 62 2 3 1 1 0 1990 9
4 62 2 3 1 1 0 1991 9
4 62 2 3 1 1 30500 1992 9
4 62 2 3 1 1 33000 1993 9
4 62 2 3 NA NA NA 1994 9
4 62 2 3 4 1 35000 1996 9
这里,输出应该是:
i change_reg change_urban
4 3 0
【问题讨论】:
-
欢迎来到stackoverflow!您的问题不清楚,请根据How to make a great R reproducible example阅读并编辑您的问题,以便其他用户可以帮助您。另外,添加预期的输出。
-
请具体说明您的预期输出。根据您的示例数据,不要提及“汇总统计信息”,而是提供这些汇总计数的确切值,以反映区域或城市的变化。您的示例越详细和解释性越好。
-
@Ben 添加了一些示例,希望对您有所帮助
-
我看到 i=45 时,城市的变化是 1,虽然它看起来像 2 个变化(从 1 到 2,然后从 2 到 1)。您是否正在寻找区域和城市的独特值的数量,因为人以前在 1 的城市中?还是这是一个错误?
-
@Ben 哎呀,这是个错误。应该是 2。不寻找独特的变化,将编辑