ಟೆಂಪ್ಲೇಟು:Inflation
This template is only capable of inflating Consumer Price Index values: staples, workers rent, small service bills (doctor's costs, train tickets). This template is incapable of inflating Capital expenses, government expenses, or the personal wealth and expenditure of the rich. Incorrect use of this template would constitute original research. If you yourself do not possess it, please consult someone with economic training before making use of this. |
This ಟೆಂಪ್ಲೇಟು employs intricate features of template syntax.
You are encouraged to familiarise yourself with its setup and parser functions before editing the template. If your edit causes unexpected problems, please undo it quickly, as this template may appear on a large number of pages. You can conduct experiments, and should test all major changes, in either this template's sandbox, the general template sandbox, or your user space before changing anything here. |
This template takes a country_code, for example, "US
" for the United States or "UK
" for United Kingdom, a value in that country's currency, a start_year, and applies to it the country's consumer price inflation until "recently" or another end year.[೧] For example, this template calls the U.S. inflation table located in the sub-template Template:Inflation/US/dataset to perform the U.S. calculation. This means that whenever a new year arrives and the inflation tables are updated, all articles using this template have their displayed values updated accordingly.
Alternatively, you can provide a second, optional end_year parameter, and the value will be inflated for the period between the two years, providing a convenient way of getting values from different time periods adjusted around the same date.
Usage
[ಬದಲಾಯಿಸಿ]{{Inflation|country_code|value|start_year|r=digit}}
{{Inflation|country_code|value|start_year|end_year|r=digit}}
{{Inflation|country_code|value|start_year|r=digit}}
{{Inflation|country_code|value|start_year|r=digit}}
The supported countries are listed below, with their country_code and minimum start_year:
Country name | country_code | minimum for start_year |
---|---|---|
Australia[೨] | AU | 1901 |
ಕೆನಡಾ[೩] | CA | 1916 |
ಜರ್ಮನಿ[೪] | DE | 1882 |
United Kingdom[೫] | UK | 1264 |
United States[೬] | US | 1800 |
Parameters
[ಬದಲಾಯಿಸಿ]- country_code (parameter 1) can be: AU, CA, DE, UK, US, UKNGDPPC, etc.
- value (parameter 2) can have commas, but no currency symbol.
- start_year (parameter 3) depends on years allowed for each country.
- end_year (parameter 4), if provided, must be higher (later) than start_year, but not higher than the current year, and will default to "recently" if left out;
- r=digit sets the digit in which the value must be rounded, defaulting to "0" if unspecified, i.e., without cents (see Tips & Tricks below for details on how to use this parameter).
- fmt=c will insert commas into the inflated value.
- fmt=eq will show an equivalent-to phrase.
- cursign=X will set the currency symbol when 'fmt=eq' is used (default: $).
Examples:
-
{{Inflation|DE|1000000|2000}}
= ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨". -
{{Inflation|US|1000000|2001|2001}}
= 1000000 -
{{Inflation|US|1000000|1990|2005|r=2}}
= 1494905.76 -
{{Inflation|UK|1000000|1323|1978|r=-3}}
= 114610000
Entering invalid parameters will result in a link to the NaN article:
-
{{Inflation}}
= Error when using{{Inflation}}
:|index=
(parameter 1),|value=
(parameter 2) and|start_year=
(parameter 3) must be specified. -
{{Inflation|abc}}
= Error when using{{Inflation}}
:|value=
(parameter 2) and|start_year=
(parameter 3) must be specified. -
{{Inflation|DE|1000000}}
= Error when using{{Inflation}}
:|start_year=
(parameter 3) must be specified. -
{{Inflation|US|1000000|1200|3000}}
= Error when using{{Inflation}}
:|start_year=1200
(parameter 3) is lower than the earliest available year (1634) in index "US" and|end_year=3000
(parameter 4) is greater than the latest available year (2023) in index "US". -
{{Inflation|UK|1000000|2005|2004}}
= Error when using{{Inflation}}
:|start_year=2005
(parameter 3) is greater than|end_year=2004
(parameter 4).
Tips & Tricks
[ಬದಲಾಯಿಸಿ]Currency conversion
[ಬದಲಾಯಿಸಿ]This template is currency agnostic, which means it doesn't convert between different currencies. Thus, if you wanted to know how much DM 1,000.00 marks in 1960 are worth nowadays, entering {{Inflation|DE|1000|1960|r=2}}
would provide a result (ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨".) still in marks, not in euros.
Consequently, if you need a result in another currency than the one in which the original value is stated, for now you must do the conversion manually, as in the following example which uses the defined conversion rate of € 1 = DM 1.95583:
-
{{#expr:(
= Expression error: Unexpected < operator.{{Inflation|DE|1000|1960|r=2}}
/ 1.95583) round 2}}
A currency conversion template to ease these conversion tasks is planned. This section will be updated accordingly once it's developed.
Rounding
[ಬದಲಾಯಿಸಿ]By default the values are calculated to the unit, as for most huge values cents are undesirable. If you need a different precision you can provide the |r=
parameter to determine in which digit the rounding must happen. To obtain cents you'd use |r=2
, but other values can be used, including negative ones: |r=-3
, for example, will round to the nearest thousand, |r=-6
to the nearest million, and so on and so forth.
Formatnum
[ಬದಲಾಯಿಸಿ]For a better visualization you can format the returned value using either the internal {{formatnum:}}
magic word, or the alternative {{Formatprice}}
template (see below). Each method has its advantages and disadvantages.
{{formatnum:}}
is the standard method for formatting numbers in MediaWiki. It adds thousands and decimal separators according to the user settings, and works well for raw numbers composed of up to 15 digits and a dot. On the other hand, it doesn't allow one to set how many digits must be shown after the decimal dot. Thus, a calculated value of "1234.5" will appear as "೧,೨೩೪.೫", not the expected "1,234.50", making it better suited for integer prices unless the value is known and you can add the missing zeros by hand:
-
DM {{formatnum:
= DM ೨೦,೦೬,೧೦೨.00{{Inflation|DE|1000000|1957|1978}}
}}.00 -
£{{formatnum:
= £೧೧,೪೬,೧೦,೦೦೦{{Inflation|UK|1000000|1323|1978|r=-4}}
}} -
${{formatnum:
= $ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨".{{Inflation|US|1000000|1990|r=2}}
}}
Another potential source of difficulties resides in the way certain calculated values are expressed. In many cases the result comes as a number in engineering units ("1.2E+9" instead of "1200000000"), and when that happens {{formatnum:}}'ing
the result fails. A workaround then is to express the value to be inflated with fewer digits, adding a multiplier text such as "million" after the result, and then hitting the "Show preview" button as many times as needed, changing parameters until the best result is found:
-
${{formatnum:
= $ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨".{{Inflation|US|1000000000|1900|r=-8}}
}} -
${{formatnum:
= $ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨". thousand{{Inflation|US|1000000|1900|r=-5}}
}} thousand -
${{formatnum:
= $ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨". million{{Inflation|US|1000|1900|r=-2}}
}} million -
${{formatnum:
= $ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨". billion{{Inflation|US|1|1900|r=1}}
}} billion
The following section provides an automated way of avoiding this trial and error scenario.
Formatprice
[ಬದಲಾಯಿಸಿ]{{Formatprice}}
is a template specifically designed to display price values, both big and small, in a more pleasant way than {{formatnum:}}
allows for. For example, instead of showing the whole of a huge number such as "953,783,409,856.12", it would show it as "954 billion", while small numbers have their cents part appearing as expected, "1234.5" being properly shown as "1.23 thousand".
-
DM {{Formatprice|
= DM 2.01 million{{Inflation|DE|1000000|1957|1978}}
}} -
£{{Formatprice|
= £115 million{{Inflation|UK|1000000|1323|1978|r=-4}}
}} -
${{Formatprice|
= $NaN{{Inflation|US|1000000|1990|r=2}}
}} -
${{Formatprice|
= $NaN{{Inflation|US|1000000000|1900|r=-8}}
}}
Documenting
[ಬದಲಾಯಿಸಿ]It's a good practice to provide a valid reference for the prices calculated with this template in the articles where it's used. The template {{Inflation-fn|country}}
was developed to ease this task. It accepts as its single parameter the same country codes used here, and will generate one or more appropriate footnotes. Typically, this is how a piece of text using it looks like:
In 1910 a ''blah'' cost on average £1,000. This is equivalent to £{{Formatprice|{{Inflation|UK|1000|1910|r=2}}}} in present day terms.{{Inflation-fn|UK}}
Resulting in this converted code (notice the footnote link at the end):
The footnote thus generated appears whenever {{reflist}}
or <references />
is used in an article, usually in its "References" section. See below for the live example in this document's own References section, or click the above generated footnote to jump to it.
Limitations
[ಬದಲಾಯಿಸಿ]- Currently it isn't possible to "de-inflate" a value to what it would have been in a previous year. If you need this functionality, please request it at the talk page. Adding it won't be difficult, but there's no point in doing so before someone actually needs it.
- Substitution isn't supported at all. Trying to
{{subst:Inflation|...}}
would only result in a long sequence of embedded parser code without any direct benefit. If you need to obtain an inflated price only once, please use the special ExpandTemplates page then copy the result and paste it at the desired location.
Developer Documentation
[ಬದಲಾಯಿಸಿ]An inflation series represents templates in the following categories:
- Template:Inflation/name
- Template:Inflation/name/dataset
- Template:Inflation/name/startyear
- Template:Inflation/doc/name (Which is then displayed at Inflation/name/dataset as the documentation, and needs to refer to the original data source)
Modifications need to be made to:
- Template:Inflation-fn
See also
[ಬದಲಾಯಿಸಿ]{{Inflation-fn}}
{{Formatprice}}
- Inflation
- Consumer price index
- Harmonised Index of Consumer Prices
- List of country codes
- List of circulating currencies
- United States Consumer Price Index
- Consumer Price Index (United Kingdom)
References
[ಬದಲಾಯಿಸಿ]- ↑ How recently depends on how the data set for each country is constructed, and on the internal tables being updated accordingly every January. Some data tables provide inflation data up to December 31, ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨"., others up to roughly June-July ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨"., and others yet up to December 31, ಪದವಿನ್ಯಾಸ ದೋಷ: ಗುರುತಿಸಲಾಗದ ವಿರಾಮ ಚಿಹ್ನೆ"೨"..
- ↑ Australian Consumer Price Inflation figures follow the Long Term Linked Series provided in Australian Bureau of Statistics (2009) 6461.0 – Consumer Price Index: Concepts, Sources and Methods, 2009 as explained at §§3.10–3.11; this series comprises "from 1901 to 1914, the A Series Retail Price Index; from 1914 to 1946–47, the C Series Retail Price Index; from 1946-47 to 1948-49, a combination of the C Series Index, excluding rent, and the housing group of the CPI; and from 1948–49 onwards, the CPI." (3.10)
- ↑ Canadian inflation numbers based on Statistics Canada. "Consumer Price Index, historical summary". CANSIM, table (for fee) 326-0021 and Catalogue nos. 62-001-X, 62-010-X and 62-557-X. And Consumer Price Index, by province (monthly) (Canada) Last modified 2013-12-20. Retrieved January 8, 2014
- ↑ German inflation numbers based on data available from Deutsches Statistisches Bundesamt.
- ↑ ೫.೦ ೫.೧ UK CPI inflation numbers based on data available from Gregory Clark (2013), "What Were the British Earnings and Prices Then? (New Series)" MeasuringWorth.
- ↑ Consumer Price Index (estimate) 1800–2014. Federal Reserve Bank of Minneapolis. Retrieved February 27, 2014.