matlab - 从excel文件创建变量
问题描述
我有一个 excel 文件,其中包含我想成为第 1 列中的变量和第 2 列中的值的内容:
Plot.Shift 20
Plot.MarkerSize 6
Plot.MarkerColor black
Plot.MarkerFaceColor black
Plot.FontSize 22
我读了文件
s=readcell('PlotOptions.xlsx','Sheet','PlotOptions');
我想在 MATLAB 代码中绘制新变量,例如:
>> Plot.Shift % Set it to 20
>> Plot.MarkerSize % Set to 6
解决方案
使用cell2struct:
s=readcell('PlotOptions.xlsx','Sheet','PlotOptions');
field_names=regexp(s(:,1),'(?<=\.)[A-Za-z]+$','match','once');
Plot = cell2struct(s,field_names);
Plot(1) = [];
Plot
是具有所需字段的结构:
>> Plot.Shift
20
>> Plot.MarkerFaceSize
6
...
推荐阅读
- python - Ansible:在嵌套字典中添加值并插入到另一个字典中
- ios - 我可以在 Expo 中制作纯语音驱动的应用程序吗?
- python - 有没有一种方法可以在比较图像时在 opencv 中设置阈值?
- swiftui - SwiftUI - 正确使用导航视图和表格
- flutter - 图像资源服务捕获的异常,在 dispose() 后调用 setState():_ImageState
- ios - 为什么我的函数没有重新加载 UITableView 的数据?
- php - Azure AD 组预配:更新组时未从 AD 获取 PATCH 请求
- r - 为什么在 R 中的函数中首选 require() 命令?
- javascript - 有没有办法在 html 中的服务器中显示不和谐成员
- javascript - 如何仅在异步命令完成后循环遍历数组?