Function issues when user input is required for if statement?

1 view (last 30 days)
Hi all,
I am trying to write a function meant to address a table, where the user would specify whether they want to aggregate data by day/month/year and the output would be a summary table of that information. Right now I have:
function y = preciptotal(x)
Prompt = 'Are you totaling by Day, Month, or Year?';
UI = input(Prompt, 's');
if UI == 'Day';
y =varfun(@sum,x,'InputVariables','Rain_mm','GroupingVariables',{'Month' 'Day' 'Year'});
elseif UI == 'Month';
y =varfun(@sum,x,'InputVariables','Rain_mm','GroupingVariables',{'Month' 'Year'});
elseif UI == 'Year';
y =varfun(@sum,x,'InputVariables','Rain_mm','GroupingVariables',{'Year'});
end
end
The function runs fine when the UI is Day, but gets caught up when Month or Year are used. Any ideas why this may be?
Thanks!

Accepted Answer

Walter Roberson
Walter Roberson on 4 May 2016
strcmp() not "=="

More Answers (0)

Categories

Find more on Dates and Time in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!