Help Using Variable In Workspace in For Loop
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Kristine
el 30 de Abr. de 2025
Comentada: Kristine
el 30 de Abr. de 2025
Hi y’all,
I have a variable in my Workspace that I want to reference in my for loop, but it doesn’t work. It only works if I define that same variable in my loop. How can I fix this?
output_folder_location = '/Users/blah_blah/Test_Output' ; % variable in Workspace
function [] = each_day_table(folder_referenced) dimention = size(folder_referenced) ;
for i = 1:dimention(2) datastore_result = datastore(folder_referenced(i)) ; original_data = readall(datastore_result) ;
with_datetime = add_datetime_column(original_data, folder_referenced(i)) ;
[folder, name, ext] = fileparts(folder_referenced(i)) ; output_filename = fullfile(output_folder_location, "new_" + name + ext) ; % where I’m referencing variable from Workspace writetable(with_datetime, output_filename) % Saving files.
end
end
It only works when I do:
… [folder, name, ext] = fileparts(folder_referenced(i)) ; output_folder_location = '/Users/blah_blah/Test_Output' ; % Defining variable here output_filename = fullfile(output_folder_location, "new_" + name + ext) ; writetable(with_datetime, output_filename) % Saving files. …
0 comentarios
Respuesta aceptada
Cris LaPierre
el 30 de Abr. de 2025
Editada: Cris LaPierre
el 30 de Abr. de 2025
Your for loop has been defined inside a function. Functions have their own workspace. You need to either pass the variable into the function as an input argument or define it inside the function.
output_folder_location = '/Users/blah_blah/Test_Output' ; % variable in Workspace
function [] = each_day_table(folder_referenced,output_folder_location)
dimention = size(folder_referenced) ;
for i = 1:dimention(2)
datastore_result = datastore(folder_referenced(i)) ;
original_data = readall(datastore_result) ;
with_datetime = add_datetime_column(original_data, folder_referenced(i)) ;
[folder, name, ext] = fileparts(folder_referenced(i)) ;
output_filename = fullfile(output_folder_location, "new_" + name + ext) ; % where I’m referencing variable from Workspace
writetable(with_datetime, output_filename) % Saving files.
end
end
Más respuestas (0)
Ver también
Categorías
Más información sobre Whos en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!