使用MATLAB读取CSV文件并提取指定列的最后一个数值
使用MATLAB读取CSV文件并提取指定列的最后一个数值
本文将介绍如何使用MATLAB读取CSV文件,并提取指定列的最后一个数值。
以下是MATLAB示例代码,可以读取名为'jichu.csv'的CSV文件,并提取'Alpha'、'Beta'、'CDtot'和'CL'列的最后一个数值:
% 读取CSV文件
data = readmatrix('jichu.csv');
% 寻找指定列的索引
header_row = string(data(1, :));
alpha_index = find(header_row == 'Alpha');
beta_index = find(header_row == 'Beta');
cdtot_index = find(header_row == 'CDtot');
cl_index = find(header_row == 'CL');
% 初始化结果变量
results = struct('Alpha', [], 'Beta', [], 'CDtot', [], 'CL', []);
% 遍历数据
for i = 1:size(data, 1)
row = string(data(i, :));
if contains(row, 'Results_Name') && contains(row, 'VSPAERO_History')
% 找到目标行
results.Alpha = row(alpha_index);
results.Beta = row(beta_index);
results.CDtot = row(cdtot_index);
results.CL = row(cl_index);
end
end
disp(results);
代码说明:
- 读取CSV文件: 使用
readmatrix()函数读取CSV文件数据到data变量中。 - 寻找指定列的索引: 获取CSV文件的第一行作为标题行,使用
find()函数查找指定列名在标题行中的索引。 - 初始化结果变量: 创建一个结构体
results,用于存储提取的数值。 - 遍历数据: 使用循环遍历
data中的每一行数据。 - 找到目标行: 判断当前行是否包含'Results_Name'和'VSPAERO_History',如果是则认为是目标行。
- 提取数值: 将目标行中对应列的数值存储到
results结构体中。 - 显示结果: 使用
disp()函数显示results结构体中的数据。
注意事项:
- 请将代码中的'jichu.csv'替换为你实际的CSV文件名。
- 请根据实际需求修改列名('Alpha', 'Beta', 'CDtot', 'CL')和结果保存方式。
这段代码将会将'Alpha'、'Beta'、'CDtot'和'CL'列的最后一个数值存储在results结构体中,并在MATLAB命令窗口中显示结果。你可以根据实际需求对代码进行修改。
原文地址: https://www.cveoy.top/t/topic/i7r 著作权归作者所有。请勿转载和采集!