循环以月份列表作为R中的输入

循环以月份列表作为R中的输入,r,R,我试图运行一个以月为输入的循环。此外,我想指出一个给定主题在特定日期出现的次数。我试图这样做的方式如下 for (i in c("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December")){ print(length(which(data$Date == "i 2005" &a

我试图运行一个以月为输入的循环。此外,我想指出一个给定主题在特定日期出现的次数。我试图这样做的方式如下

for (i in c("January", "February", "March", "April", 
                "May", "June", "July", "August", "September", "October", "November", "December")){
  print(length(which(data$Date == "i 2005" & data$Maxtopic == 3)))
}
然而,对于所有日期,我得到0作为输出。你知道为什么吗


干杯,

试试
数据$Date==sprintf(“%s 2005”,i)
。您尝试搜索文本字符串“i 2005”

然而,
功能就是为此而设计的。使用
gsub
删除年份:

table(gsub(" 2005", "", data[data$Maxtopic == 3, "Date"], fixed = TRUE)) 

PS:下次请提供一个可复制的示例,以支持解决方案的开发和测试。

尝试
data$Date==sprintf(“%s 2005”,i)
。您尝试搜索文本字符串
“i 2005”
。PS:可能有比循环更简单、更有效的解决方案。没有可复制的例子很难说。非常感谢。你想把它作为得到分数的答案吗?干杯使用
表(gsub(“2005”,data[data$Maxtopic==3,“Date”],fixed=TRUE))可能更好地解决您的实际问题。
。哇,确实更好!干杯。值得注意的是,
month.name
将为您提供所有12个月的字符串,而无需键入它们。