精华内容
下载资源
问答
  • MATLAB中新增了一个table类型,可以很方便的读取文件中的数据,在使用这个格式的...%读取table类型的数据,访问csv文件中的第8列 y2 = T{:, 9}; y3 = T{:, 10}; y4 = T{:, 7}; x = T{:, 1}; yyaxis left; % 激活左边

    MATLAB中新增了一个table类型,可以很方便的读取文件中的数据,在使用这个格式的时候会默认把读取文件的第一行设置为标题,访问的时候需要通过索引值进行访问,具体怎么操作通过一个MATLAB例子进行说明。

    MATLAB代码:

    T = readtable('tmp.csv');
    y1 = T{:, 8};%读取table类型的数据,访问csv文件中的第8列注意是{},不是()
    y2 = T{:, 9};
    y3 = T{:, 10};
    y4 = T{:, 7};
    x = T{:, 1};
    
    yyaxis left; % 激活左边的轴
    plot(x, y1);
    hold on
    plot(x, y2);
    hold on
    plot(x, y3);
    title('Predictive data analysis');
    xlabel('DOY');
    ylabel('errors'); % 给左y轴添加轴标签
    
    yyaxis right; % 激活右边的轴
    plot(x,y4);
    set(gca,'YDir','reverse');  
    ylabel('Predictive value'); % 给右y轴添加轴标签
    
    展开全文
  • 基于Matlab读取标准RINEX格式的GPS星历数据,采用Matlab直接读取Rinex文件
  • MATLAB】关于matlabtable数据使用

    千次阅读 2020-08-28 11:03:09
    上一次的训练中一道数据处理的题目,五千来号数据,作为matlab新手这怎么搞,后面发现可以导入,但是问题来了,我根本提取不出那些数据啊(苦恼)。后面发现这些数据从excel导入进去后是table类型的,然后去找了相关...

    前言

    上一次的训练中一道数据处理的题目,五千来号数据,作为matlab新手这怎么搞,后面发现可以导入,但是问题来了,我根本提取不出那些数据啊(苦恼)。后面发现这些数据从excel导入进去后是table类型的,然后去找了相关资料,终于有点会使了,于是记录整理一下,下次忘了还可以再看看,嘻嘻~

    table简介

    MATLAB引入了这个新的数据类型,为的就是更好的用来做统计,就可以理解成一个表(类似统计 工具箱中的dataset),可以存放各种类型的容器。第一行就作为表头,如果取的表头符合matlab的命名规则,那么该列直接如此命名。

    数据导入

    1.通过导入数据构造table对象

    我们可以使用readtable 函数,构造一个新的table对象,把csv文件中的数据导入到该对象中。readtable函数接受文件名称作为输入,返回一个table对象。

    % 通过readtable函数来构造table对象
    >> nasdaq = readtable('xxxx.csv')
    Warning: Variable names were modified to make them valid MATLAB identifiers. 
    nasdaq =                                                                
        Symbol             Name              MarketCap     IPOYear
        ______    _______________________    __________    _______
        'AAPL'    'Apple Inc'                '$742.63B'    1980   
        'AMZN'    'Amazon.com Inc'           '$173.33B'    1997   
        'MSFT'    'Microsoft Corporation'    '$346.9B'     1986   
    

    ps:warning 的原因是该列表把第一行作为了表头,缩了空格,修改了表头

    调用table构造函数来构造table对象

    我们还可以通过直接调用table类的构造函数来创建table对象。
    上栗子

    下面程序中第1,2行用元胞数组来表示表中每一列的数据,第3行规定了表头的名称,第4行调用table的构造函数创建table对象,先输入数据,再输入表头的名称。表头通过table对象的VariableNames属性来设置。

    name={'Abby';'Bob';'Charlie'};                        % 3x1列向量
    number={'5086470001';'5086470002';'5086470003'};      % 3x1列向量
    colName={'Name','Number'};
    phonetable=table(name,number,'VariableNames',colName) 
    

    通过转换函数构造table对象

    除了使用table的构造函数来创建table对象,还可以使用转换函数把其它数据类型转成table,下列通过数组数据类型类构造table。下面的程序的1-2行,我们利用financial工具箱中的fetch函数,从Yahoo财经处得到雅虎从3月1日到3月10日的股票价格,fetch函数将返回一个数组,第3行我们利用array2table转换函数把得到数组转成table。

    % 通过array2table创建table对象  
    conn = yahoo;
    array = fetch(conn,'YHOO','3/1/2015','3/10/2015');
    yhoo = array2table(array,...
      'VariableNames', {'date','open','high','low','closing','volumn','adjusted'})
    

    访问table中的数据

    理解这个的最好方式就是栗子:

    通过表Table.1所建立的table对象,在命令行中显示如下:
    (以访问这个table为例)

    % nasdaq table在命令行中的显示
    nasdaq = 
        Symbol             Name              MarketCap     IPOYear
        ______    _______________________    __________    _______
    
        'AAPL'    'Apple Inc'                '$742.63B'    1980   
        'AMZN'    'Amazon.com Inc'           '$173.33B'    1997   
        'MSFT'    'Microsoft Corporation'    '$346.9B'     1986    
    

    1.我们可以通过使用dot+Variablename的语法直接访问table中的列,返回的结果是cell格式的数据:

    % 使用dot语法访问table中的数据
    >> nasdaq.Symbol           % dot格式+变量名的访问方式
    ans = 
        'AAPL'
        'AMZN'
        'MSFT'
    >> class(nasdaq)           % 返回cell格式的数据
    ans =
    cell  
    %table类重载了subsref函数,于是支持MATLAB传统的圆括号下标访问,如果要访问第一行,则:
    % 使用下标语法访问table中的数据
    >> nasdaq(1,:)
    ans = 
        Symbol       Name        MarketCap     IPOYear
        ______    ___________    __________    _______
    
        'AAPL'    'Apple Inc'    '$742.63B'    1980     
    

    2.使用圆括号,返回的结果仍然是table,如果要访问第2到3行,则:

    % 使用下标语法访问table中的数据
    >> nasdaq(2:3,:)
    ans = 
        Symbol             Name              MarketCap     IPOYear
        ______    _______________________    __________    _______
    
        'AMZN'    'Amazon.com Inc'           '$173.33B'    1997   
        'MSFT'    'Microsoft Corporation'    '$346.9B'     1986     
    

    返回的结果仍然是table。
    3.table数据结构支持MATLAB传统的花括号下标访问,返回的结果是cell格式的数据

    % 花括号下标访问
    >> nasdaq{:,1}   % 花括号下标访问,返回第一列中的数据
    ans = 
        'AAPL'
        'AMZN'
        'MSFT' 
    还可以把Dot语法和下标语法结合起来获取数据,下例代码访问table第一列的第三行,返回的结果是元胞。
    % Dot语法和圆括号下标访问结合
    >> nasdaq.Symbol(3)
    ans = 
        'MSFT'
    >> class(ans)     % 圆括号下标访问,返回结果是元胞 
    ans =
    cell  
    

    (这个图还挺有用的)
    图Figure.1中以表Table.1中的数据为例,总结了几种访问table中不同区域的数据的方法。
    Figure.1 访问table中的数据

    在这里插入图片描述

    参考网址:https://www.ilovematlab.cn/article-52-1.html

    展开全文
  • matlab读取.data文件

    千次阅读 2020-12-21 22:06:23
    文件是letter_recognition.data ...具体参数可以参考官方文档:readtable letter_recognition = readtable('letter-recognition.data','Filetype','text','ReadVariableNames',false); 读出的格式:

    文件是letter_recognition.data

    具体参数可以参考官方文档:readtable

    letter_recognition = readtable('letter-recognition.data','Filetype','text','ReadVariableNames',false);

    读出的格式:

    展开全文
  • matlab读取表格,并统计成绩,得出最高分,平均分,和中间的成绩
  • Matlabtable类型介绍

    千次阅读 2020-08-05 15:00:59
    Matlab中,table类型类似R语言dataframe。发现网上没有太多介绍,由于我要做完整的数据处理工作,这个类型是自己比较熟悉的,所以准备扒一遍教程和各种资料。 table读取: readtable('abc.csv') table构造: %...

    Matlab中,table类似R语言dataframe。发现网上没有太多介绍,由于我要做完整的数据处理工作,这个类型是自己比较熟悉的,所以准备扒一遍教程和各种资料。

    • table读取:
    readtable('abc.csv')
    • table构造:

    VariableName 用{ }或者字符数组str = ["a", "b"]存放,逗号隔开

    table(column1, column2, ...., 'VariableNames', column_name)
    

    Size 表示table的行列数:50行3列

    VariableTypes表示列属性

    table('Size',[50 3],'VariableTypes',{'string','double','datetime'}) 
    • 增加table列:
    table(:, col) = col

     

    • 合并两张table

    按行合并

    horz(t1, t2);

    按列合并

    cat(1, t1, t2);

    ``cat``也可以用于按行合并,第一个参数(dim)为2即可。

    • 常用的VariableTypes包括:

    'double', 'single'

    'logical'

    'datetime'

    'cell'. 注意,matlab建议使用cell存储character而不是char。用char会被自动转换成cell array。

    • 将数组(矩阵)转换为table:

     array2table(matrix)

    *************包含列名

    array2table(matrix, 'VariableNames', column_name)

    ************包含行名

    array2table(matrix, 'RowNames', {});

    • 访问table数据

    table.column_name %访问列

    table(x, y) %访问行列

    table.column_name(x) %访问行列

    • Properties:

                 Description: ''
                    UserData: []
              DimensionNames: {'Row'  'Variables'}
               VariableNames: {1×183 cell}
        VariableDescriptions: {}
               VariableUnits: {}
          VariableContinuity: []
                    RowNames: {}
            CustomProperties: 未设置自定义属性。

    • 修改VariableNames:
    table.Properties.VariableNames = newnameArray
    • 类型转换

    很多ui.control对象都不接受table类型作为参数,一般需要将table转化为数组。

    转换列的方法:

    table.column_name(m:n)

     

    展开全文
  • Matlab cell table struct

    2015-07-12 16:16:00
    Matlab中cell、table和struct三种Array都可以存储不同类型的数据,以table最为灵活。用cell2tabletable2cell可以使cell和table互相转换。 读取cell中的数据可以用{}或()。例如,读取cell类型A的第二个数据可以用A{...
  • 关于matlabtable数据结构的使用

    万次阅读 2017-09-01 20:45:33
    关于matlabtable数据结构的使用 matlab中比较好使的数据结构有数组、矩阵、元胞数组、结构数组等等,但随着大数据的普及,在2013以以上版本的的matlab中,出现了类似R语言中的列表一样的一个新的数据结构——...
  • XML Toolbox for Matlab
  • 原创Matlab读取Excel并显示-ExcelReader.rar 运行效果 excelreader.JPG 主程序如下,没有M币的朋友就自己贴回去,再做个.fig文件就可以用了,需要2个控件 controller name ...
  • MATLAB读取和存储csv

    2021-03-10 10:21:04
    读取csv的方法,1和0,表示跳过第1行和第0列开始读取数据 points = csvread('H:\mission\LNG\AIS\20210104_20210119\csv\209351000_AIS_position.csv',1,0); 但是我发现我的csv文件不能用这个办法,因为我的csv...
  • 我用matlab读取txt文件,如何在sql中建立的表格名为读取的txt的文件名,而且这些操作需要在matlab中完成。 ``` [filename,filepath]=uigetfile('*.txt','打开文件');%gui中打开文件 file=[filepath,filename]; ...
  • (1)代码生成table表: clc clear %% 快速生成表格,第一列是一个元胞数组,名字定义 name = {'Mike';'John';'Sam';'Bob';'Brown'}; %用大括号生成cell age = [38;43;38;40;49];%doble数组数值 height = [71;69;64;...
  • Matlab非常适合数据选择(Matlab uitable data selection)我有从AScii文件中读取数据的Uitable。我想使用鼠标选择列,也使用复选框。 我尝试了很多,但我无法弄清楚如何使用鼠标选择合适的列并获取该数据。此外,我...
  • textread不用先fopen那个文件,适用于格式统一的txt文件的一次性大批量读取。 from: http://blog.sina.com.cn/s/blog_618af1950100k926.html 实际应用中经常要读取txt文件,这个时候就需要用到强大的textread...
  • 直接将ginput获取的double类型数据set为uitable的data导致再向表格中添加数据时,提示串联的矩阵的维度不一致。function pushbutton2_Callback(hObject, eventdata, handles)a=cell(1,2);b=ginput(1);a...
  • MATLAB读取文本数据处理

    千次阅读 2017-08-30 17:31:46
    最近接到了一个小任务,具体要求是计算某地19km和21km高度的风速...考虑到MATLAB具有强大的数据处理能力,因此用MATLAB完成了这个题目,程序如下: %function [daysouth,daynorth,nthvec,sthvec,nthstd,sthstd,nsvec,
  • Matlab读取中文是乱码的解决

    千次阅读 2019-09-29 10:46:59
    本代码适合读取UTF-8 无BOM格式的文本,表现为:excle打开文本为乱码,但是用notebook+打开又能看到正确文字。 这种情况多是因为文本的编码为Linux系统生成,而用Windows的软件打开存在编码错误,从而形成乱码。 ...
  • You can read hexadecimal and binary numbers from a file and store them as numeric variables in a table. The readtable function automatically reads hexadecimal and binary numbers when they include the ...
  • clc;clear all;[numeric_data text_data rawdata] = xlsread('aaa.xls');headings = rawdata(1,:) % get headings fromfirst row�ta = cell2mat(rawdata(2:end,:)) % get numericdata from row 2 to ...读取Excel文...
  • Matlab 读取xml文件的一个简单例子) 所要读取的xml文件如下: <?xml version="1.0" encoding="UTF-8" ?>- -   0.005 0.007 0.0098 0.0137 0.0192 0.0269 0.0376 0.0527 0.0738 0.103 0.145 0.203 0.284 0...
  • 类似于matlab中的dlmread。 4.file_lines reports the number of lines of text contained within the specified file or files 返回文件的行数 5.读取Excel文件 用IDL读取的话有下面几种方法。 5.1 Excel文件转存...
  • 把数据保存为mat文件 将很多不同类型的数据保存到同一个mat文件里,只需用save命令即可,如下: A = [1 2 3; 4 5 6; 7 8 9];...读取mat文件,遍历所有数据 当我们使用load命令时 TestData = load('Dat
  • HDF, BMP, JPEG, GIF, PCX, XWD, CUR, ICO, RAS, PBM, PGM, PPM AU, SND - NeXT/Sun sound 音訊 WAV - Microsoft Wave sound MATLAB 程式設計入門篇......目前最为流 行的 读取 HDF 文件的语言是交 互式 数据语言 ...
  • (1)安装Matlab的PC; (2) 学习rinex.pdf资料; (3)o文件准备; (4)伪代码编写,理清数据流; (5)代码测试 我们在使用定位方法SPP/PPP/RTK时,是按照历元来读取卫星的观测值(PR/CP),Dop
  • Matlab读取图像数据并写入TXT

    千次阅读 2019-06-03 14:09:44
    我最近在做嵌入式图像处理,我的任务是:首先要把一幅图像读入matlab,获取每个像素点的灰度值,然后分别在TXT文件中以二进制、十进制和十六进制的数值显示出来。 在matlab中使用imread函数读入一幅图像,得到由...
  • 请改用 readtable、readmatrix 或 readcell(附加传送门,点击即可) xlsread用法 num = xlsread(filename) 读取名为 filename 的 Microsoft® Excel® 电子表格工作表中的第一个工作表,并在一个矩阵中返回数值数据...
  • 利用pandas读取一般在做数据分析时最常接触的就是逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件...
  • 这时候要检查读取的文件对应的数据内容是否匹配,如果不匹配,那么从不匹配那里开始,内容全部为NaN。 我在处理一种文件时,没看到格式不同,才遇到此类问题。 data1 = textscan(fid1, '%s %n %n %n %n %n %n %n'...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,990
精华内容 796
关键字:

matlab读取table

matlab 订阅