startDate="04/01/2015"
endDate="07/01/2015"
dateString="04/30/2015 03/21/2015 06/28/2015 12/19/2015"
Я хочу иметь вычисляемый столбец, который возвращает значение «Да», если все даты в DateString находятся между STARTDATE и ENDDATE, и «Нет» в противном случае.Spotfire TERR скрипт, чтобы проверить, если строка даты находится в пределах диапазона дат
Обратите внимание: dateString может иметь любое количество дат.
Я пытался писать Терр скрипт (возвращаемый тип String):
MyCustomFunction <- function(startDate, endDate, dateString) {
v1 <- scan(text=dateString, what='', quiet=TRUE)
v2 <- as.Date(v1, '%m/%d/%Y')
temp <- v2 >= as.Date(startDate, '%m/%d/%Y') & v2 <= as.Date(endDate,'%m/%d/%Y')
ifelse(length(unique(temp))==1, ifelse(unique(temp)==TRUE, test<-as.character(TRUE), test<-as.character(FALSE)), test<-as.character(FALSE))
test
}
output <- MyCustomFunction(startDate = input1, endDate = input2, dateString = input3)
Но это показывает пустой столбец. Может ли кто-нибудь помочь мне с этим? Или предоставить альтернативное решение? Я использую Spotfire версии 6.5
Заранее спасибо.
Что вы подразумеваете под каким-либо количеством дат? Вы имеете в виду разные форматы даты? Или вы имеете в виду, что диапазон дат может отличаться? Также находятся ли датыStrings в столбце строки? – phiver
@phiver Любое число дат, я имел в виду dateString, может быть любым из следующих: «04/30/2015 23/21/2016 28.06.2012» 18.07.2012 «ИЛИ » 04/30/2015 03/21/2015 "ИЛИ " 04/30/2015 03/21/2015 06/28/2015 "OR " 04/30/2015 ".... Форматы даты всегда одинаковы. И да, столбец строки даты имеет строку типа. – ashetty