フィルターのクリア

How to select and loop variables in a filename

2 ビュー (過去 30 日間)
Sammy
Sammy 2022 年 8 月 2 日
コメント済み: Sammy 2023 年 6 月 18 日
I have monthly files with 2 variables: sst (jan_sst03) and time(jan_dt03) per file, how do I loop all my files such that it will take the mean of the sst variable only?
  2 件のコメント
Walter Roberson
Walter Roberson 2022 年 8 月 2 日
編集済み: Walter Roberson 2022 年 8 月 2 日
Are those mat files? xlsx?
Does the name of the variable change in each file? So the substring "sst" needs to be checked for?
Sammy
Sammy 2023 年 6 月 15 日
編集済み: Sammy 2023 年 6 月 18 日
I figured this one out already. By making a timeseries of the files (jan2003-dec2022) (the names of the variable does not change). Then, using the time variable to find the duration or period to average the sst variable by, e.g. idx=find(mo==1), I can now average all the january months, making my january monthly climatology. (:

サインインしてコメントする。

回答 (1 件)

Shree Harsha Kodi
Shree Harsha Kodi 2023 年 6 月 17 日
Folder = 'path_to_folder'; % Specify the folder containing your files
files = dir(fullfile(folder, '*.mat')); % Get a list of all .mat files in the folder
means = [];
for i = 1:numel(files)
data = load(fullfile(folder, files(i).name)); % Load the data from the file
sst = data.sst; % Extract the "sst" variable from the loaded data
mean_sst = mean(sst); % Calculate the mean of the "sst" variable
means = [means mean_sst]; % Store the mean value in the array
end
% Display the mean values
disp(means);
  1 件のコメント
Sammy
Sammy 2023 年 6 月 18 日
Hi Shree! I figured this one out a year ago when I made monthly climatological means. But thanks!

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeFile Operations についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by