When inputting an x value how to output a y

1 次查看(过去 30 天)
using this table I want to input a YEAR as the x, and want to output both the male and female as y values in the command window.

回答(1 个)

Ameer Hamza
Ameer Hamza 2020-10-30
编辑:Ameer Hamza 2020-10-30
One approach is to use interp1()
years; % all year values
male_vals; % male values
female_vals; % female values
vals = [male_vals female_vals];
mdl = @(year) interp1(years, vals, year)
You can then use mdl() as a function.
mdl(2000); % it will give values for year 2000
Another approach is to just use indexing
years; % all year values
male_vals; % male values
female_vals; % female values
vals = [male_vals female_vals];
mdl = @(year) vals(years==year, :);
You can also call it like a function as shown above.
  4 个评论
Ashley Megow
Ashley Megow 2020-10-30
I figured it would just be easier to send pictures of my code
Ameer Hamza
Ameer Hamza 2020-10-30
The elseif block will go like this
elseif (yearWant==1990)
vals = [tbl.Male(:) tbl.Female(:)];
valueWant = interp1(tbl.Year(:), vals, yearWant)
end

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Tables 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by