【发布时间】:2019-12-28 22:46:00
【问题描述】:
我在 R 中有一个面板数据框,其中包含很多行。我希望将数据框子集化为仅包含每个月的最后 10 天(或月底前 10 天的最后一次观察)。但是,月份各不相同,并非所有月份都包括月末观察结果。我需要包含每个月最后 10 或 5 天的数据子集。
CIV50s = CIV50sub %>%
select(cusip, date, impl_volatility) %>%
group_by(year(date), month(date), cusip) %>%
summarize(impl_volatility = tail(impl_volatility, 1)) %>%
mutate(date = make_date(`year(date)`, `month(date)`))
我已经试过了。然而,这只给了我每月观察的最后一天。我需要最后 10 天或月底前 10 天的最后一次观察。
我的数据集如下所示:
【问题讨论】:
-
如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。不要发布数据图片,因为我们无法轻松将其导入 R。而是分享一小部分
dput()数据。 -
您的数据在某一天是否可以有多个观察值?
-
@MrFlick 将尝试这样做。
-
@KevinTroy 每秒(ID)每天只有一次观察。但是有多个secid,因此同一天会有多个观测值。