【发布时间】:2018-08-15 06:38:53
【问题描述】:
我想使用 UKTUS 数据库在 R 中创建时间使用变量。
UKTUS 将数据集定义的每 10 分钟的人员活动记录为act1_1、act1_2、...、act1_144 变量(144 x 10 分钟)。
每个活动都细分为不同的编码方案。例如 SLEEP 编码如下:
110 睡眠 111 在床上睡不着 120 病在床上
我在 R 中创建了一个包含 129 列和 16533 行的矩阵。
Activities <-uktus15_diary_wide[,c ("serial", "pnum","ddayw","DVAge", "dmonth", "dyear","WhenDiary","AfterDiaryDay","WhereStart","WhereEnd","RushedD","Ordinary","KindOfDay","Trip","enjm1","act1_1, "act1_2", "act1_3", "act1_4", "act1_5", "act1_6", "act1_7", "act1_8", "act1_9", "act1_10", "act1_11", "act1_12", "act1_13", "act1_14","act1_15", "act1_16", "act1_17", "act1_18", "act1_19", " "act1_21", "act1_22", "act1_23", "act1_24", "act1_25", "act1_26", "act1_27", "act1_28", "act1_29", "act1_30",
"act1_31", "act1_32", "act1_33", "act1_34", "act1_35", "act1_36", "act1_37", "act1_38", "act1_39", "act1_40",
"act1_41", "act1_42", "act1_43", "act1_44", "act1_45", "act1_46", "act1_47", "act1_48", "act1_49", "act1_50",
"act1_51", "act1_52", "act1_53", "act1_54", "act1_55", "act1_56", "act1_57", "act1_58", "act1_59", "act1_60",
"act1_61", "act1_62", "act1_63", "act1_64", "act1_65", "act1_66", "act1_67", "act1_68", "act1_69", "act1_70",
"act1_71", "act1_72", "act1_73", "act1_74", "act1_75", "act1_76", "act1_77", "act1_78", "act1_79", "act1_80",
"act1_81", "act1_82", "act1_83", "act1_84", "act1_85", "act1_86", "act1_87", "act1_88", "act1_89", "act1_90",
"act1_91", "act1_92", "act1_93", "act1_94", "act1_95", "act1_96", "act1_97", "act1_98", "act1_99", "act1_100",
"act1_101", "act1_102", "act1_103", "act1_104", "act1_105", "act1_106", "act1_107", "act1_108", "act1_109",
"act1_110", "act1_111", "act1_112", "act1_113", "act1_114")]
对于 TV 变量,我在 Stata 中生成了代码,但我不知道如何为 R 重写。有人可以帮帮我吗?
我有 144 个时间步长; 8209 和 8230 之间的活动与看电视有关。
广播/电视变量的Stata命令如下:
generate tv = 0
generate radio = 0
forvalues i = 1/144 {
replace tv = tv+10 if (act1_`i’ > 8209 & act1_`i’ < 8230)
replace radio = radio+10 if (act1_`i’ > 8229 & act1_`i’ < 8321)
}
【问题讨论】:
-
你能告诉minimal reproducible example你想要达到的目标吗?
-
我已经添加了
[stata]标签,也许它会让有这两种技能的人回答这个问题。 -
@markus 谢谢你的帮助。我想要一个名为 TV 的变量,它由以下代码定义:TV AND VIDEO; 8210 未指定的电视视频或 DVD 观看; 8211 在电视上看电影; 8212 在电视上观看体育节目; 8219 其他指定的电视收看; 8220 未指定的视频观看; 8221 在视频中观看电影; 8222 观看体育视频; 8229 其他指定的视频观看;
-
所以在Stata中你有144个变量
act1_1,act1_2到act1_144,你想知道它们在指定范围内的次数。您的第一步包括清楚地解释您如何在 R 中保存数据。翻译成更简单的东西,因为没有人知道答案(不是我;我是 Stata 人)想要或需要一个 144 列的示例。编辑您的问题;不要在 cmets 中添加关键细节。