matlab怎么选取excel的特定列构成数组
例如:
要将A、C、D、E四列组成一个数组,即除去B列。
首先看matlab读取excel专用函数xlsread是否提供了相应的功能。
num = xlsread(filename)
读取名为filename文件的数据,默认读取sheet1中的数据。filename要包括文件路径。
num = xlsread(filename,sheet)
读取名为filename文件工作表sheet中的的数据,
num = xlsread(filename,xlRange)
读取名为filename文件的数据,默认读取sheet1中的数据,读取xlRange列的
num = xlsread(filename,sheet,xlRange)
读取名为filename文件工作表sheet,xlRange列中的的数据
num = xlsread(filename,sheet,xlRange,'basic')
用基本的形式读取电子表格中的数据,the default on systems without Excel for Windows.(不知道怎么翻译?难道是说不支持windows下的excel?),如果没有工作表和列的特别要求,默认为空字符。例如: num= xlsread(filename,'','','basic').
不过我在matlab下运行的num= xlsread('D:\program files\matlab\example.xls','','','basic')报错,我的是windows系统
[num,txt,raw]= xlsread(filename)
num返回filename中的数据部分数组,txt部分用NaN表示
txt返回filename的txt值
raw返回和原数组相同大小的元胞数组
Example:
[num,txt,raw]= xlsread('D:\program files\matlab\example.xls')
>> example
num =
1 2 2 3
5 6 6 7
3 9 8 14
NaN NaN NaN 5
txt =
'yx' 's' 'a'
raw =
[ 1] [2] [2] [ 3]
[ 5] [6] [6] [ 7]
[ 3] [9] [8] [14]
'yx' 's' 'a' [ 5]
___ = xlsread(filename,-1)
交互式的打开一个windows下的excel窗口读取excel中的数据
Example:
num= xlsread('D:\program files\matlab\example.xls',-1)
先在打开的excel中选取数据,再返回matlab点击弹出窗口中的确定(如上图)即可。不过好像也不支持隔列选取,只支持多列连续选取
[num,txt,raw,custom]= xlsread(filename,sheet,xlRange,'',functionHandle)
执行一个函数,返回多种类型的矩阵
Example:
- 在工作表中执行一个函数 然后返回数值型数据
- 在命令行中输入以下命令 产生一个随机的正态分布矩阵(gallery函数用法参照help)
misc = pi*gallery('normaldata',[10,3],1);
xlswrite('myExample.xlsx',misc,'MyData');
- 编写特定功能的函数(此处是将[-3 3]以外的数据变成-3或3,按照最近原则)
function [Data] = setMinMax(Data)
minval = -3; maxval = 3;
for k = 1:Data.Count
v = Data.Value{k};
if v > maxval || v < minval
if v > maxval
Data.Value{k} = maxval;
else
Data.Value{k} = minval;
end
end
end
- 最后按照函数实现对数据的处理
trim = xlsread('myExample.xlsx','MyData','','',@setMinMax)
(用空字符代替XRange和basic参数,此处用了两个空字符当占位符 placeholders)
2 返回数据的索引(按列计算)
- 函数要满足返回索引的需求
function [Data,indices] = setMinMax(Data)
minval = -3; maxval = 3;
indices = [];
for k = 1:Data.Count
v = Data.Value{k};
if v > maxval || v < minval
if v > maxval
Data.Value{k} = maxval;
else
Data.Value{k} = minval;
end
indices = [indices k];
end
end
- 调用指定函数
[trim,txt,raw,idx] = xlsread('myExample.xlsx',...'MyData','','',@setMinMax);
>>disp(idx)
>>7 9 11 15 19 20 23 24 30
以上就是关于xlsread函数的全部变体和用法
在help帮助的最后写明了xlsread函数的两个限制:
1 Limitationsxlsread reads only 7-bit ASCII characters(只能读取七位ASCII序列)
2 .xlsread does not support non-contiguous ranges(不支持非邻行的读取,也就是说只能读取相邻的行和列了~~~~(>_<)~~~~ )
.(选取特定列的方法,待定更新)
matlab怎么选取excel的特定列构成数组的更多相关文章
- C# EXCEL导入 混合列文字为空,找不到可安装的 ISAM的解决办法
C# EXCEL导入 混合列文字为空,找不到可安装的 ISAM的解决办法 使用C#导入 Excel数据到 DataTable,如果连接串中只写 Excel 8.0,则正常的字符列,数值列都没有问题,但 ...
- .NET 里操作Excel 出现有些列的数据取不到的问题
错误重现: ----------------------------------------------------------------------- 在导入Excel读取数据时,其中的一个字段保 ...
- LeetCode Excel Sheet Column Title (输出excel表的列名称)
题意:给一个数字n,输出excel表的列名称. 思路:其实观察可知道,是个26进制的标记而已.那就模拟一下,每次计算一位时就先左移1位,再进行计算. class Solution { public: ...
- jquery获取表格中特定列
jQuery().text() 如果有一个表格,我们要用jquery获取特定列,则需要修改列的索引值就好了,此句代码获取的是页面的第10列
- 将EXCEL中的列拼接成SQL insert插入语句
工作中经常需要将EXCEL文件中的数据导入到各种数据库,但是对于不熟悉数据库的人来说,如果直接使用命令执行导入,这无疑是一个难题,也是一个风险.这里我们直接在EXCEL文件中拼接成标准的SQL ins ...
- SharePoint 2013 搜索SharePoint 特定列和特定文档(自己定义搜索)
SharePoint 2013 搜索SharePoint 特定列和特定文档 1,操作步骤和图例,因语言和版本号的不同 我尽量使用抓图方式. 2. In Central Administration, ...
- 工作小应用:EXCEL查找两列重复数据
工作案例:excel存在A列.B列,需要找出B列没有A列的数据,具体做法如下(以office2007做案例): 1.点击 公式-定义名称 ,选中A列,填写名称“AAA”,选中B列,填写名称“BBB”: ...
- excel 如何为列添加指定内容(字符串)
excel 如何为列添加指定内容(字符串) CreateTime--2018年5月26日17:52:32 Author:Marydon 1.情景展示 D列的值需要获取B列的值并且在后面统一加上12 ...
- 用NPOI操作EXCEL-锁定列CreateFreezePane()
public void ExportPermissionRoleData(string search, int roleStatus) { var workbook = new HSSFWorkboo ...
随机推荐
- for循环简单实例(打印乘法表,打印菱形)
关于for循环的简单应用: 回顾了一下for循环的嵌套: for循环嵌套简单来讲就是一个外圈的for程序里面一个套着一个小的for程序,如果在范围内就来回运行计算,超出了就跳出等待 下面程序为打印九九 ...
- verilog中参数传递与参数定义中#的作用(二)
一.module内部有效的定义 用parameter来定义一个标志符代表一个常量,称作符号常量,他可以提高程序的可读性和可维护性.parameter是参数型数据的关键字,在每一个赋值语句的右边都必须是 ...
- c语言数据结构(一)
第一章 绪论 一.数据与数据结构 数据:所有能被输入到计算机中,且被计算机处理的符号的集合计算机操作的对象的总称.是计算机处理的信息的某种特定的符号表示形式. 数据元素:数据中的一个“个体”,数据 ...
- 聊天功能插件Socket.io
一.Socket.io是什么 是基于时间的实时双向通讯库 基于websocket协议的 前后端通过时间进行双向通讯 配合express快速开发实时应用 二.Socket.io和ajax区别 基于不同的 ...
- JSON初体验(三):FastJson解析
JSON解析之FastJson(阿里巴巴解析开源) 特点: Fastjson是一个Java语言编写的高性能功能完善的JSON库,它采用的 是一种"假定有序快速匹配"的算法,把JSO ...
- DATA 转 16 进制
// 转 16进制 编码 NSData *data = [NSData dataWithBytes:(const void *)dataOut length:(NSUInteger)dataOutMo ...
- MAC 更新brew 镜像源
mac 更新brew镜像源 cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" git remote set-url o ...
- 40套PSD欧美扁平化网页模板,可二次编辑开发,精品
40套PSD欧美扁平化网页模板,可二次编辑开发,绝对精品,下载地址:百度网盘, https://pan.baidu.com/s/1uMF4MM_3UC2Q6mbyNomLfQ 模板内容预览: 小
- Appium-原理、设置
Appium是支持跨平台的移动端自动化测试框架. 下面介绍下Appium的具体工作流程: 首先,Appium server 默认监听4723端口,监听客户端的命令. 客户端指的是 我们编写的自动化测试 ...
- Oracle作业练习题
第一问 //登陆scott用户 //解锁 alter user scott account unlock; //给用户申请密码 alter user scott identified by tiger ...