首页 > 解决方案 > 从 colnames 子集日期

问题描述

我有一个数据框如下:

TAS1     2000 obs. of 9862 variables

这些变量(列)中的每一个都代表从 1979 年 1 月 1 日到 2005 年 12 月 31 日的每日温度。colnames 已使用这些日期设置。我现在希望将数据框分成十二个单独的月度数据框 - 包含一月、二月、三月等。

我努力了:

TAS1.JAN = subset(TAS1, grepl("-01-"), colnames(TAS1))

但得到错误:

Error in grepl("-01-") : argument "x" is missing, with no default

有没有相对快速的解决方案?尽管尝试了各种解决方案,但我觉得一定有但没有破解它。

标签: r

解决方案


我会像下面那样对 1 月份的数据进行子集化。

Jan_df <- subset(MyDatSet, select=(grepl("-01-, colnames(MyDatSet))))

我假设您的父数据集称为 MyDatSet 并且模式“-01-”定义它是一月份的数据。您可以在其他 11 个月内重复该过程,或者提出智能循环。


推荐阅读