我是SAS的初学者,我有一组要分析的交通事件数据。我希望按时间过滤掉数据 - 所有事件都发生在18:00:00之前。或9:00:00 - 18:00:00之间的事件
我试图找到合适的代码,但没有取得任何成功。有人可以帮帮忙吗?我使用的是标准SAS而不是企业指南。
是否带有WHERE语句?如果是这样,我该如何输入时间?
答案 0 :(得分:0)
我假设你的描述中有一个带有时间变量的数据集,并希望使用硬编码的时间对其进行子集化。为此,最简单的方法是使用标准WHERE处理的时间文字。时间字面值是在引号中指定的时间,后跟T
字符。
例如,您可以创建类似于以下内容的内容,这些内容会对times
数据集进行分组,但仅限于time
早于18:00的观察结果:
data times_before_6pm;
set times;
where time < '18:00't; /* restrict to times of day earlier than 6pm */
run;
这假设您的时间是时间值而不是日期时间值。如果它们是日期时间值,则需要从中提取时间部分(使用TIMEPART()函数,您可以在WHERE语句中执行此操作)。
希望这有帮助。