精华内容
下载资源
问答
  • 使用matlab合并Excel文件

    千次阅读 2019-06-13 21:50:45
    任务描述 有两种不同类型的excel文件,每种共25个。需要将同一种类型文件汇总,并生成新的excel文件。 通过批处理语句copy *type1.xlsx all.xlsx可以实现,但有时候会...combine_list.m 合并文件程序,以函数形式...

    任务描述

    有两种不同类型的excel文件,每种共25个。需要将同一种类型文件汇总,并生成新的excel文件。

    • 通过批处理语句copy *type1.xlsx all.xlsx可以实现,但有时候会乱码
    • 练习一下matlab

    解决思路

    两个matlab程序

    • combine_eyedata.m 读取文件列表;将不同类型文件分类;输出汇总后文件
    • combine_list.m 合并文件程序,以函数形式呈现

    combine_eyedata.m

    clear;
    input_file = 'E:\expdata\exp1\formal\eyecompute';
    output_file = 'E:\expdata\exp1\formal\eyecompute_all\';
    
    dirOutput = dir(fullfile(input_file,'*.xlsx'));
    file_name_lists = {dirOutput.name};
    
    %
    blink_lists = [];
    converge_lists = [];
    fixation_lists = [];
    microsac_lists = [];
    pupil_lists = [];
    steadiness_lists = [];
    for i = 1:length(file_name_lists)
        t = regexp(file_name_lists{i}, '_', 'split');  
        switch t{4}
            case 'blink.xlsx'
                blink_lists = [blink_lists file_name_lists(i)];
            case 'converge.xlsx'
                converge_lists = [converge_lists file_name_lists(i)];
            case 'fixation.xlsx'
                fixation_lists = [fixation_lists file_name_lists(i)];
            case 'microsac.xlsx'
                microsac_lists = [microsac_lists file_name_lists(i)];
            case 'pupil.xlsx'
                pupil_lists = [pupil_lists file_name_lists(i)];
            case 'steadiness.xlsx'
                steadiness_lists = [steadiness_lists file_name_lists(i)];
        end
    end
    
    % blink_all = [];
    % converge_all = [];
    % fixation_all= [];
    % microsac_all = [];
    % pupil_all= [];
    % steadiness_all = [];
    
    blink_all = combine_list(input_file, blink_lists);
    converge_all = combine_list(input_file, converge_lists);
    fixation_all = combine_list(input_file, fixation_lists);
    microsac_all = combine_list(input_file, microsac_lists);
    pupil_all = combine_list(input_file, pupil_lists);
    steadiness_all = combine_list(input_file, steadiness_lists);
    
    xlswrite([output_file 'blink_all.xlsx'], blink_all);
    xlswrite([output_file 'converge_all.xlsx'], converge_all);
    xlswrite([output_file 'fixation_all.xlsx'], fixation_all);
    xlswrite([output_file 'microsac_all.xlsx'], microsac_all);
    xlswrite([output_file 'pupil_all.xlsx'], pupil_all);
    xlswrite([output_file 'steadiness.xlsx'], steadiness_all);
    

    combine_list.m

    function out_list = combine_list(src, name_list)
        out_list = [];
        for i=1:length(name_list)
            [data, header] = xlsread([src '\' name_list{i}]);
            out_list = [out_list;data];
        end
        out_list = [header; num2cell(out_list)];
    end
    
    展开全文
  • matlabexcel里的sheet重命名; matlabExcel工作表重命名; 使用matlabexcel合并单元格; matlab导出excel合并单元格;

    废话不多说,先上代码

    e = actxserver('Excel.Application');                                        % open Activex server
    ewb = e.Workbooks.Open(excelPath);                                          % open file (enter full path!)
    
    ewb.Worksheets.Item(1).Name = 'I am sheet1';                                % rename sheet 1                                       
    ewb.Worksheets.Item(2).Name = 'I am sheet2'; 
                                                                            
    ewb.Worksheets.Item(1).Range('A1:J1').MergeCells=1;                         % 合并EXCEL中shett1里面A1到J1的单元格
    ewb.Worksheets.Item(2).Range('A1:J1').MergeCells=1;  
                           
    ewb.Save                                                                    % save to the same file
    ewb.Close(false)
    e.Quit
    

    emmm代码放完,好像也没啥说的了。

    为了防止你们遇到这个问题搜不到这个答案,下面多写点搜索词吧:

    matlab将excel里的sheet重命名;
    matlab对Excel工作表重命名;
    使用matlab将excel合并单元格;
    matlab导出excel时合并单元格;

    猜你喜欢:👇🏻
    【Matlab】怎么修改Excel单元格颜色?
    Matlab循环读取txt文件并对其中数据进行计算最后导出为excel

    在这里插入图片描述

    展开全文
  • G = importdata('g.txt');%读入文本 H = importdata('h.txt'); I = importdata('i.txt');...%读入excel out = [G;H;I;J;K]; xlswrite('z.xlsx',[out]);%将合并的结果写入z.xlsx t=out(:,1); %第 2 列为t cd=out...

     

    G = importdata('g.txt');%读入文本
    H = importdata('h.txt');
    I = importdata('i.txt');
    J = importdata('j.txt');
    K = importdata('k.txt');
    %a=xlsread('filename.xls');%读入excel
    out = [G;H;I;J;K];
    xlswrite('z.xlsx',[out]);%将合并的结果写入z.xlsx
    t=out(:,1); %第 2 列为t
    cd=out(:,3); %第 3 列为cd
    cl=out(:,4); %第 3 列为cl
    plot(t,cd,'r');

    展开全文
  • (一)合并两个Excel的信息 描述: 假设两个表格分别为某些产品的生产量和销售量流水信息,如图, 尝试将两个表格合并,即将对应同一产品的生产量和销售量合并在同一行;且产品名称这一列,不能有重复的产品名称。...

    描述:
    假设两个表格分别为某些产品的生产量和销售量流水信息,如图,
    生产量表格
    销售量表格
    尝试将两个表格合并,即将对应同一产品的生产量和销售量合并在同一行;且产品名称这一列,不能有重复的产品名称。

    第一步:
    读取生产量、销售量数据,

    [save_name,save_path] = uigetfile('*.*','选择生产量数据');
    Data_produce=readtable(fullfile(save_path,save_name));
    
    [save_name,save_path] = uigetfile('*.*','选择销售量数据');
    Data_sale=readtable(fullfile(save_path,save_name));
    

    第二步:
    整理销售量数据,将产品名称相同的销售量合并到一起(第一列为产品名称、第二列为产品销售量、第三列为产品能效等级)。

    class_s=unique(Data_sale{:,1});%取出互不相同的产品名称集合
    n=length(class_s);
    
    for m=1:n
       
       [row, col] = find(cellfun(@(x) strcmp(x,class_s(m)),Data_sale{:,1}));
       tmp1=Data_sale{:,2};
       num_s(m)=sum(tmp1(row));%产品销售量
       num_s=num_s';
       tmp3=Data_sale{:,3};
       stage_s(m)=tmp3(row(1));%产品能效等级
       stage_s=stage_s';
       
    end
    

    第三步:
    整理生产量数据,将产品名称相同的生产量合并到一起;将同时有生产量和销售量的产品信息合并到一起。

    class_p=unique(Data_produce{:,1});%取出互不相同的产品名称集合
    n=length(class_p);
    for m=1:n
       
       [row, col] = find(cellfun(@(x) strcmp(x,class_p(m)),Data_produce{:,1}));
       TMP1=Data_produce{:,2};
       num_p(m)=sum(TMP1(row));%产品生产量
       num_p=num_p';
       TMP3=Data_produce{:,3};
       stage_p(m)=TMP3(row(1));%产品能效等级
       [row1, col1] = find(cellfun(@(x) strcmp(x,class_p(m)),class_s));
       
        %将生产量不为0但销售量为0的列出,销售量赋0
        if sum(row1)>0
            SALE(m)=num_s(row1);
        else
            SALE(m)=0;
        end
        
    end
    

    第四步:
    将销售量不为0但生产量为0的列出,生产量赋0,

    for m=1:length(class_s)
        
        [row2, col2] = find(cellfun(@(x) strcmp(x,class_s(m)),class_p));
        if sum(row2)==0
            sale_produce_class(p)=class_s(m);%产品名称
            sale_produce_num(p)=num_s(m);%产品销售量
            sale_produce_stage(p)=stage_s(m);%产品能效等级
            p=p+1;
        end
        
    end
    
    

    第五步:
    合并数据输出,

    MingCheng=[class_p; sale_produce_class'];
    N0=length(sale_produce_num);
    num_p0=zeros(N0,1);%生产量赋0
    ChanLiang=[num_p;num_p0];
    XiaoLiang=[SALE';sale_produce_num'];
    NengXiao=[stage_p';sale_produce_stage'];
    
    T = table(MingCheng,ChanLiang,XiaoLiang,NengXiao);
     [save_name,save_path] = uiputfile('merge_excel.xlsx');%提示选择保存的路径和文件名
     writetable(T,fullfile(save_path,save_name));
    

    最终合并结果
    在这里插入图片描述

    展开全文
  • Matlab写入excel-字符串与数字合并

    千次阅读 2020-04-26 16:02:24
    写入excel xlswrite(‘test.xlsx’,area,‘Result’,‘A1’)%写入字符串 xlswrite(‘test.xlsx’,heng,‘Result’,‘B1’)%写入字符串 xlswrite(‘test.xlsx’,data,‘Result’,‘B2’)%写入数据
  • 样本量必须要有一定的规模才能得到相对可靠的分析结论,对于成百上千张excel表格如何快速将所有的数据汇总到一张表上呢?另外excel表的格式可能是xlsx,也可能是xlsx,甚至可能是csv格式,如下图所示。不过不用担心...
  • 本章主要讲述matlab控制Excel单元格取值,单元格字体样式选择,单元格颜色设置,单元格合并操作等
  • %将空文件从文件列表中删除 2、在写入到合并Excel文件的时候需要一个类似指针的东西,不断将写入起点下移,这样避免后面写入文件覆盖前面的。但是下移的量需要用‘A1:H13’这个字符串取得,比如这里13-1=12,这个...
  • 6年前第一次接触matlab,期间只有在完成某些作业的时候用到过,也仅限于plot之类。去年冬天S函数怎么都用不好;工作面试说不清Simulink和m文件;上周用了近一周时间来做数据拟合并求其导数。下面是数据拟合的简单...
  • %将空文件从文件列表中删除 2、在写入到合并Excel文件的时候需要一个类似指针的东西,不断将写入起点下移,这样避免后面写入文件覆盖前面的。但是下移的量需要用‘A1:H13’这个字符串取得,比如这里13-1=12,这个...
  • 不少小伙伴们在日常学习工作中遇到需要整合大量excel的工作,比如需要将1000个excel的sheet1工作表中的数据读取后存放到...(如果要求合并多个excel并且保留原格式,那使用VBA是最好的选择,后期另写一个博客发布代码)
  • 2.预分配内存与xlswrite存储数据到excel的速度 3.mat文件的存与读 4.cell的补齐和合并 1.结构体操作 MATLAB提供了两种定义结构的方式:直接应用和使用struct函数。 1.1 直接引用 %---直接引用----- %定义一个...
  • 功能有把txt/excel表导数据到matlab里,还有合并矩阵,还有连mysql数据库 我从以前的代码里找到,不知道这个版本是不是能运行的,但是也差不多就是这样。matlab中总是要转换数据的类型,心好累 load 'X:/work/...
  • 关联问题:[mcj]使用Python读取mat文件并存为excel关联问题: 因工作需要,需要将.mat文件存到excel中,基本思想就是,先读取mat文件,然后读取mat的索引头,将该索引的数据存为list,然后把该list存到excel中去。...
  • 我之前写过一篇批量读取Excel数据的,代码比较原始和啰嗦:张敬信:【Matlab/R语言】批量读入Excel文件​zhuanlan.zhihu.com近年来,R语言技术突飞猛进,再来一篇更简洁高级的。批量读取并合并,道理很简单,总共分...
  • 我之前写过一篇批量读取Excel数据的,代码比较原始和啰嗦:张敬信:【Matlab/R语言】批量读入Excel文件​zhuanlan.zhihu.com近年来,R语言技术突飞猛进,再来一篇更简洁高级的。批量读取并合并,道理很简单,总共分...
  • %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%读取子文件夹中bad.csv数据%并把所有数据写到一个excel文件中%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%D:\筛选前\DLC384\P1646C%%% K=(inputdlg('please input File directory...
  • 我之前写过一篇批量读取Excel数据的,代码比较原始和啰嗦:张敬信:【Matlab/R语言】批量读入Excel文件​zhuanlan.zhihu.com近年来,R语言技术突飞猛进,再来一篇更简洁高级的。批量读取并合并,道理很简单,总共分...
  • 学习Excel技术,关注微信公众号:excelperfect在发表文章《Python实战01:合并多个PDF文件》后,与那位朋友要解决的问题相比,仍然有些差异。其具体要求是:“文件夹内有名称为1234-01,1234-02,4567-01,4567-02的...
  • matlab与c语言混合编程

    2019-08-31 23:29:06
    前言: 众所周知对于循环这种运算,matlab的运算速度是不快的 想起来个冷笑话,黑客帝国里的主角呢奥之所以能快...之前因为合并数据需要不会数据库,强行在matlab里利用类似excel的vlookup功能,无奈太慢,只能想...
  • 三维点云空间两直线拟合并求距离-工件边缘坐标.txt 新手,单一直线有所了解,看帖子是用的EXcel引用,那么用TXT可以直接做么所用MATLAB为2016 坐标来源是工件检测 谢谢
  • 文章大纲:如何更有效的导入你的数据全面的观察数据设置索引设置标签处理缺失值删除重复项数据类型转换筛选数据数据排序处理文本合并&匹配导入数据:pd.read_excel("aa.xlsx") pd.read_csv("aa.xlsx") pd.read...
  • 作者 | 周志鹏责编 | 刘静这是Python数据分析实战基础的第三篇内容,...因为案例数据存放在同一个Excel表的不同Sheet下,我们需要指定sheetname分别读取:下面开始清洗的正餐。增——拓展数据维度1.1 纵向合并这三个...

空空如也

空空如也

1 2
收藏数 35
精华内容 14
关键字:

matlab合并excel

matlab 订阅