如何从excel读取到matlab并利用这些信息查找变量

I have an excel file that contains information about conductors. eg:

type     r        GMR      R
-------- -------- -------- -------- 
b        0.773    0.604    0.238    
c        0.815    0.6614   0.235    
d        0.864    0.698    0.209

I want to write a Matlab program to read these values then display a message 'type of conductor? '

then takes the values from the desired row and uses it to find some values. eg:

If b was chosen i want to find x=ln(r)=ln(.773)  and y=GMR^2 ...
if c was chosen x=ln(0.815)

I know how to write a program that can read form a single row or column but not a whole sheet.

#0

Use xlsread

[num,txt,raw] = xlsread(filename) reads data from the first worksheet in the Microsoft Excel spreadsheet file named filename and returns the numeric data in array num. Optionally, returns the text fields in cell array txt, and the unprocessed data (numbers and text) in cell array raw.

[num,txt,raw] = xlsread(filename,sheet) reads the specified worksheet.

So here's an example program which reads foo.xls into the numeric matrix D and the text info txt.

%# Read the XLS file
[D txt] = xlsread('foo.xls');
%# Assume the columns are fixed (if not see note 3)
r_col = 1; gmr_col = 2;
%# Get the type of conductor
cond = inputdlg('type of conductor?');
%# Search for the right row
index = strcmp(txt(2:end,1),cond);
%# Compute the data
x = log(D(index,r_col));
y = D(index,gmr_col).^2;

Note:

  1. If you don't want a dialog box, replace inputdlg with input
  2. If there are multiple rows with the same type value, then x and y will be vectors
  3. I'm assuming that r and GMR are columns 1 and 2 respectively. If you don't know this, you can find out by using strcmp on the first row of txt. I.e.,

    r_col   = strcmp(txt(1,:),'r');
    gmr_col = strcmp(txt(1,:),'GMR');
    

推荐文章

C++链表创建-数组中传递

C++链表创建-数组中传递

推荐文章

php调用system()并在不阻塞的情况下写入命名管道

php调用system()并在不阻塞的情况下写入命名管道

推荐文章

SQL触发器的问题

SQL触发器的问题

推荐文章

如何将UITextField的值从一个VC传递到另一个VC中的字符串?

如何将UITextField的值从一个VC传递到另一个VC中的字符串?

推荐文章

两颗红宝石连在一起?有可能吗

两颗红宝石连在一起?有可能吗

推荐文章

使用FFTWLib(C#):找不到libfftw3-3.dll

使用FFTWLib(C#):找不到libfftw3-3.dll

推荐文章

将自定义GTK+控件编译为C++

将自定义GTK+控件编译为C++

推荐文章

如何在ubuntu10.04中更新PHP

如何在ubuntu10.04中更新PHP

推荐文章

选择其他元素后移除或设置属性值

选择其他元素后移除或设置属性值

推荐文章

当日历同步新事件时,处理更新的最佳方式是什么?

当日历同步新事件时,处理更新的最佳方式是什么?

推荐文章

加载Google Analytics图表返回错误请求

加载Google Analytics图表返回错误请求

推荐文章

在时间轴中发布不在ticker中发布

在时间轴中发布不在ticker中发布

推荐文章

如何使用regex检查Java中有效的html结构

如何使用regex检查Java中有效的html结构

推荐文章

用文本块绑定Richtextbox第一行

用文本块绑定Richtextbox第一行

推荐文章

在不重新打开的情况下获取更新的共享对象数据

在不重新打开的情况下获取更新的共享对象数据

推荐文章

如何在DataContract序列化程序中使用继承或子类化对象对数据成员/属性进行排序?

如何在DataContract序列化程序中使用继承或子类化对象对数据成员/属性进行排序?