Matlab学习-自定义函数

这篇具有很好参考价值的文章主要介绍了Matlab学习-自定义函数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Matlab学习-自定义函数

常用自定义函数

1. 打印时间

function result = calculate_time(time)
    % Function describe : calculate time
    % Input  : time:N*1
    % Output : result.hour/min/sec = hour/min/sec
    %                   result.fre = Sampling rate
    dt = time(2) - time(1);
    freq = 1/dt;
    result.fre = freq;

    total_time = size(time,1)*dt;
    hour = floor(total_time/3600);
    min = floor(mod(total_time,3600)/60);
    sec = total_time-3600*hour-60*min;

    result.hour = hour;
    result.min = min;
    result.sec = sec;

    s = sprintf('Time length: %dh-%dm-%.2fs, time diff: %f s, frequency: %d Hz\n', hour, min, sec, dt, round(freq));
    disp(s);

end

Matlab学习-自定义函数,Matlab学习,matlab,学习,开发语言

2. 计算统计参数

function result = statistical_analysis(data,flag,precision)
% Input : data: analyser data
%         flag: true or false   analysis absolute data or raw data
%         precision: output data precision
% Output: result = [rms std mean max min median]

column = size(data,2);
flage.absolute = flag;  % true: abs     flase: raw data

for i = 1:column
    result(i,1) = sqrt(mean(data(:,i).^2));     % rms
    result(i,2) = std(data(:,i));               % std
    if (flage.absolute)
        result(i,3) = mean(abs(data(:,i)));     % mean
        result(i,4) = max(abs(data(:,i)));      % max
        result(i,5) = min(abs(data(:,i)));      % min
        result(i,6) = median(abs(data(:,i)));   % median
    else
        result(i,3) = mean(data(:,i));          % mean
        result(i,4) = max(data(:,i));           % max
        result(i,5) = min(data(:,i));           % min
        result(i,6) = median(data(:,i));        % median
    end
end

result = round(result,precision);

vnames = {'rms','std','mean','max','min','median'};
result = array2table(result,'VariableNames',vnames);

end


Matlab学习-自定义函数,Matlab学习,matlab,学习,开发语言文章来源地址https://www.toymoban.com/news/detail-707298.html

3. 画图函数

function setting_figure()
% Drawing Parameter Settings
    grid on;
    set(gca,'ygrid','on','gridlinestyle','--','Gridalpha',0.5,'linewidth',2);
    set(gcf,'color','w');
    set(gca,'Fontsize',25);
    print(gcf,'-clipboard','-dbitmap');
end

4. 存储kml数据

function save_file_kml(data,file_path)
% Description: save kml file
% Input: data = [time latitude(deg) longitude(deg)];
%        file_path : save kml file name and path

vname = {'time','latitude','longitude'};
data = array2table(data,'VariableNames',vname);
lat = data.latitude;
lon = data.longitude;

kmlname = fullfile(file_path);
kmlname_line = strcat(kmlname,'_line.kml');
kmlname_point = strcat(kmlname,'_point.kml');

kmlwriteline(kmlname_line,lat,lon);
kmlwritepoint(kmlname_point,lat,lon);

end

5. 存储CSV文件

function save_csv(A, path)
% Description: save data
% Input : A: save data
%         path: save path
[row, col] = size(A);
fid = fopen(path, 'w');

for i=1:row
    for j=1:col-1
        fprintf(fid, '%.9f,', A(i,j));
    end
    fprintf(fid, '%.9f\r\n', A(i,col));
end
fclose(fid);

end



到了这里,关于Matlab学习-自定义函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 调用matlab曲线拟合工具箱,自定义函数预测人口数量

    拟合所求函数值不需要在已知点精确等于原始函数值,目的为了使用更简单的函数更低次的多项式表示原函数。相比插值,面对大量节点情况下选择拟合求函数曲线不失为一种更好的方法,拟合得到的曲线为一条确定的曲线。 现有一组数据分布如下图:  我们要求一条直线

    2024年02月09日
    浏览(38)
  • MATLAB中isequal函数转化为C语言

    有项目算法使用matlab中isequal函数进行运算,这里需要将转化为C语言,从而模拟算法运行,将算法移植到qt。 语法 tf = isequal(A,B) tf = isequal(A1,A2,...,An) 说明 如果 A 和 B 等效,则 tf = isequal(A,B) 返回逻辑值 1 (true);否则,返回逻辑值 0 (false)。有关每种数据类型的等效性的定义,请

    2024年02月10日
    浏览(31)
  • MATLAB中mod函数转化为C语言

    有项目算法使用matlab中mod函数进行运算,这里需要将转化为C语言,从而模拟算法运行,将算法移植到qt。 语法 b = mod(a,m) 说明 b = mod(a,m) 返回 a 除以 m 后的余数,其中 a 是被除数,m 是除数。此函数通常称为取模运算,表达式为 b = a - m.*floor(a./m)。mod 函数遵从 mod(a,0) 返回 a 的

    2024年02月10日
    浏览(43)
  • MATLAB辅助函数学习---axis()函数

    axis是一个用于控制坐标轴的函数,控制要绘制曲线 数据的范围 选择合适的 坐标刻度 如果省略这个参数,axis将自动控制你要显示的图形的坐标范围 1)基础用法: axis([xmin,xmax,ymin,ymax,zmin,zmax]): 其中 xmin 、 xmax 、 ymin 、 ymax 、 zmin、 zmax 分别表示所需 坐标轴 的x轴和y轴、z轴的

    2024年04月26日
    浏览(27)
  • 【重新定义matlab强大系列五】函数filloutliers检测并替换数据中的离群值

    🔗 运行环境:matlab 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥  推荐专栏:《算法研究》 ####  防伪水印—— 左手の明天 #### 💗 大家好🤗🤗🤗,我是 左手の明天 !好久不见💗 💗今天开启新的系列—— 重新定义matlab强大系列

    2024年02月04日
    浏览(114)
  • 【MATLAB库函数系列】线性调频Z(Chirp-Z,CZT)的MATLAB源码和C语言实现

    在上一篇博客 【数字信号处理】线性调频Z(Chirp-Z,CZT)算法详解 已经详细介绍了CZT变换的应用背景和原理,先回顾一下: 采用 FFT 算法可以很快计算出全部 N N N 点 DFT 值,即Z变换 X ( z ) X(z)

    2024年02月04日
    浏览(31)
  • 优化MATLAB中quiver函数绘制箭头图或矢量图(1)-MATLAB开发

    Matlab的基本数据单位是矩阵,利用Matlab可以较方便得绘制向量分布图,比如空气流的采样数据;函数的梯度;曲面的法线向量等等。Matlab自带的quiver和quiver3函数可以满足这一需求,但是箭头的箭型较为简单,这里主要目的即是进一步绘制更好看的矢量图。 Matlab中自带的quiv

    2023年04月21日
    浏览(65)
  • 深度学习 常见激活函数MATLAB 实现

    本文实现ReLU, Leaky ReLU, Expotential Linear unit, Sigmoid, tanh 激活函数的实现和可视化。                  

    2024年02月13日
    浏览(35)
  • 【matlab】【函数学习记录】寻找矩阵最大和次大极值点

    求二维矩阵 A 的最大极值点和次大极值点。 返回极值点所在位置。 BW = imregionalmax(A, conn) 用来寻找矩阵的极值点。 返回值 BW 类型为 logical ,和 A 同维度,其用来标示极值点的位置,值为 1 则表示对应位置为极大值点,否则值为 0 。 参数 A 可为向量、矩阵。 参数 conn 表示矩阵

    2024年02月14日
    浏览(31)
  • MATLAB算法实战应用案例精讲-【深度学习】自然语言处理模型SimCSE

    目录 前言 1.介绍 2.对比学习背景 2.1定义 2.2构造正样本 2.3对齐性和均匀性

    2024年02月11日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包