how to execute a loop through all the variables in the workspace?
조회 수: 18 (최근 30일)
이전 댓글 표시
Hi all,
Here's my question:
I ha about 300 variables in my workspace, which are named accordingly to the contents (are macroeconomic time series for 20 countries)
for example:
- gdpUK (is the GDP of United Kingdom)
- gdpUS (is the GDP of United States)
- ... (and so on for 20 countries)
- reerUK (is the real effective exchange rate for the United Kingdom)
- reerUS (REER for US)and so on
I would like to standardise these series, i need something that do:
for i= first variable: last variable
i=(i-mean(i))/std(i)
end
how can I do this?
thank you in advance for your help! :)
댓글 수: 0
채택된 답변
Guillaume
2014년 10월 5일
편집: Guillaume
2014년 10월 5일
It would have been better to store your data in tables or even cell arrays or maps. Anyway:
for cv = who('gdp*')' %transpose to get a row cell array
eval(sprintf('mean%1$s = (%1$s - mean(%1$s)) / std(%1$s);', cv{1})); %1$s is replaced by var name, output is named meanvarname
end
%same with 'reer*'
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!