sumVariables
Description
cs = sumVariables(
returns the weighted sum of variables in the cs,variables,Name=Value)climateScenario
object, cs, and appends the new variable to the property
cs.IdentifierValues.Variable. Use the NewVariable
name-value argument to specify the name of the new variable.
Examples
Compute the weighted sum of climate scenario variables contained in a climateScenario object. The climate transition scenario data that this example uses is available from the Bank of Canada and is free of charge at http://www.bankofcanada.ca.
Load the data.
load("BankOfCanadaClimateScenarioData.mat")
data = ClimateTransitionScenarioData;
head(data) k CL_GEOGRAPHY CL_SECTOR CL_VARIABLE CL_UNIT CL_SCENARIO CL_YEAR CL_VALUE
_ ____________ _________ _______________________________ ___________________ ________________________ _______ ________
1 Canada National Carbon price US$2014/tCO2e Baseline (2019 policies) 2020 12.106
2 Canada National Carbon price US$2014/tCO2e Below 2°C immediate 2020 12.106
3 Canada National Emissions | total GHG (scope 1) Million tonnes CO2e Baseline (2019 policies) 2020 781.04
4 Canada National Emissions | total GHG (scope 1) Million tonnes CO2e Below 2°C immediate 2020 781.04
5 Canada National Input price | Coal Index (2014 = 1) Baseline (2019 policies) 2020 1.2875
6 Canada National Input price | Coal Index (2014 = 1) Below 2°C immediate 2020 1.2875
7 Canada National Input price | Crops Index (2014 = 1) Baseline (2019 policies) 2020 1.0031
8 Canada National Input price | Crops Index (2014 = 1) Below 2°C immediate 2020 1.0031
Create a climateScenario object.
cs = climateScenario(data, ... RegionVar="CL_GEOGRAPHY", ... VariableVar="CL_VARIABLE", ... ScenarioVar="CL_SCENARIO", ... YearVar="CL_YEAR", ... ValueVar="CL_VALUE", ... CustomIdentifiers="Sector", ... CustomIdentifierVars="CL_SECTOR", ... UnitVar="CL_UNIT");
Specify the variables you want to add.
variables = ["Capital expenditure", "Direct emissions costs", "Indirect costs"];
Use sumVariables by specifying the Weights, NewVariable, and NewUnit name-value arguments.
cs = sumVariables(cs,variables,Weights=[1,2,1],NewVariable="Total costs",NewUnit="10 BN USD");
To see the new variable, Total costs, display the property cs.IdentifierValues.Variable.
tail(cs.IdentifierValues.Variable)
Secondary Energy | Electricity| Nuclear
Secondary Energy | Electricity| Oil
Secondary Energy | Electricity| Wind&Solar
US GDP
US inflation Y/Y
US policy rate a.r.
Unemployment rate
Total costs
Input Arguments
Climate scenario object, specified as a climateScenario
object.
Variables for summation, specified as a string vector.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN, where Name is
the argument name and Value is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Example: cs = sumVariables(cs,["Capital expenditure","Direct emissions
costs","Indirect costs"],Weights=[1,2,1],NewVariable="Total costs",NewUnit="10 BN
USD",Sector="Oil") returns the weighted sum of capital expenditure, direct
emissions costs, and indirect costs for the oil sector, in a new variable, Total
costs.
Region identifier values, specified as a string vector. By default, all the
regions are returned if you do not specify a string vector for
Region.
Scenario identifier values, specified as a string vector. By default, all the
scenarios are returned if you do not specify a string vector for
Scenario.
Year identifier values, specified as a numeric vector. By default, all the years
are returned if you do not specify a numeric vector for
Year.
Weights for summation, specified as a numeric vector. The length of
Weights must match the length of
variables.
New variable name, specified as a string scalar. If you do not specify the new
variable name, NewVariable defaults to combining the elements of
variables with plus signs.
Names of custom identifiers, specified as a string vector containing values of
cs.CustomerIndentifiers. CustomIdentifers must
match an identifier property contained in cs.CustomIdentifiers. For
example, if "Sector" is a custom identifier for the property
cs.CustomIdentifier, then cs = sumVariables(cs,["Capital
expenditure","Direct emissions costs","Indirect
costs"],Weights=[1,2,1],NewVariable="Total costs",NewUnit="10 BN
USD",Sector="Oil") computes the weighted sum of capital expenditure,
direct emissions costs, and indirect costs for the oil sector.
Version History
Introduced in R2025a
See Also
climateScenario | plot | query | groupRegions | divideVariables | shockVariables
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)