我正在尝试产生一个将年份列放入数据框中的函数。
我可以使用以下功能来执行此操作:
#Create a dataframe with some dates in it.
y<-data.frame(Date=(sample(seq(as.Date('2010/01/01'),as.Date('2018/01/01'), by="day"), 20)))
#create the year column
library(lubridate)
y$Year<-year(y$Date)
当我尝试将其包装到函数中时,什么也没发生:
#Create a dataframe with some dates
x<-data.frame(Date=(sample(seq(as.Date('2010/01/01'), as.Date('2018/01/01'), by="day"), 20)))
#Create the function
yearfunction<-function(dataframe, datecolumn)
{dataframe$Year<- year(dataframe[,datecolumn])
}
#Call the function
yearfunction(x, "Date")
我想要发生的是获得与第一个示例相同的结果。谁能帮助我修改功能以实现这一目标?
答案 0 :(得分:0)
您可以这样写ko.cleanNode($('#layered-filter-block'));
ko.applyBindings($('#layered-filter-block'));
yearfunction
或者我们也可以在函数中使用library(lubridate)
yearfunction<-function(dataframe, datecolumn) {
year(dataframe[,datecolumn])
}
y$Year <- yearfunction(y, "Date")
y
# Date Year
#1 2013-09-18 2013
#2 2013-09-26 2013
#3 2012-10-25 2012
#4 2012-05-14 2012
#5 2017-03-01 2017
#6 2016-07-10 2016
#7 2015-02-21 2015
#8 2010-07-28 2010
#9 2013-01-31 2013
#10 2012-01-31 2012
#.....
transform