摘要: Excel中运行bat文件 Sub ts4() fileToRun = "D:\OneDrive\matlab\matlab一键启动\" & "test.bat" Shell (fileToRun) End Sub test.bat中运行m文件 matlab -nodisplay -nosplash 阅读全文
posted @ 2020-09-19 01:02 redufa 阅读(3106) 评论(0) 推荐(0)
摘要: 1、cmd命令打开matlab cmd命令行可以打开matlab,执行m文件时,需要把m文件拷贝到C:\Users\Administrator.--我的电脑是这样,不知道其他电脑是不是这个。 2、bat文件打开matlab 1)bat中直接写入matlab matlab 因为和环境变量关联,bat默 阅读全文
posted @ 2020-09-19 00:42 redufa 阅读(4161) 评论(0) 推荐(0)
摘要: 直接用dos函数执行就可以了。 举例说,如du果批处理文件名 test_bat.bat,则zhi [s,e]=dos('test_bat');就会执行批处理文件,直到其结束dao才返回。这里之所以让dos返回两个参数,是为了避免标准输出信息在命令窗口中回显。 如果不希望等待执行完毕才返回,可以在命令 阅读全文
posted @ 2020-09-18 23:45 redufa 阅读(2871) 评论(0) 推荐(0)
摘要: 上一篇的疑问,得到解决,可以这样改写: Sub ts2() fileToRun = "D:\OneDrive\matlab\matlab一键启动\" & "xy.m" matlabpath = "D:\Program Files\MATLAB\R2018a\bin\matlab -nodisplay 阅读全文
posted @ 2020-09-18 21:02 redufa 阅读(735) 评论(0) 推荐(0)
摘要: 为了一键进行所有的数据分析,可以联合MATLAB和VBA编程。 VBA中调用MATLAB程序。 Sub VBA中启动matlab() fileToRun = "D:\Desktop\matlab学习\excle_matlab.m" matlabCommand = "d:\Program Files\ 阅读全文
posted @ 2020-09-18 09:22 redufa 阅读(1197) 评论(0) 推荐(0)
摘要: 1、获取原文件的名称 获取原文件文件名,但是不带扩展名:Newname = Left(File, Application.Find(".", File) - 1) 2、以新格式保存 Wb.SaveAs Filename:=MyPath & Newname & ".xlsx", FileFormat: 阅读全文
posted @ 2020-09-17 18:31 redufa 阅读(1201) 评论(0) 推荐(0)
摘要: https://blog.csdn.net/u010510134/article/details/50923026 1、用csvread函数 注意:csvread函数只试用与用逗号分隔的纯数字文件 第一种:M = CSVREAD('FILENAME') ,直接读取csv文件的数据,并返回给M 第二种 阅读全文
posted @ 2020-09-17 16:40 redufa 阅读(1668) 评论(0) 推荐(1)
摘要: 链接:https://zhuanlan.zhihu.com/p/52458010 Sub xls2csv() Application.DisplayAlerts = False t = ActiveWorkbook.Name mypath = ActiveWorkbook.Path & "\" my 阅读全文
posted @ 2020-09-17 16:28 redufa 阅读(712) 评论(0) 推荐(0)
摘要: 转载:https://zhuanlan.zhihu.com/p/33301784 '处理成txt类型 Sub getTXT() Application.DisplayAlerts = False Application.ScreenUpdating = False Dim i%, file As V 阅读全文
posted @ 2020-09-17 16:25 redufa 阅读(1342) 评论(0) 推荐(0)
摘要: 批量修改文件名 ' 程序用法 ' 0、添加要命名的文件夹的路径第一个sub的第二行,指定myPath的名称 ' 1、运行 Sub 批量获取文件名() ' 2、在D列添加新的文件名称, '模板是为了批量增加年份的前缀,所以里面有公式。 但是sheet中的内容可以删除。 年份的公司在sheet2中有备份 阅读全文
posted @ 2020-09-17 16:18 redufa 阅读(224) 评论(0) 推荐(0)
摘要: 1、识别文件名称 b= dir ('*.xlsx') % 读取后缀名是xlsx的文件 c=b(2).name % 文件名是 d=xlsread(c); % 读取指定的文件的数据 % 多个文件的数据加个循环就好 2、必要时转格式 有时候遇到从其他软件(dbc→ xls)导出的数据,虽然是xls格式,但 阅读全文
posted @ 2020-09-17 16:12 redufa 阅读(787) 评论(0) 推荐(0)
摘要: 1、满足第一列同时满足第二列中的行数 例子: a=[1 2 3 4 2 4 3 5] b=[1 2 1 2 4 4 2 6] x=find(a>1 & a<4) y=find(b(x)>1& b(x)<4) x(y) 输出结果(格式已规整,非matlab格式): a =1 2 3 4 2 4 3 5 阅读全文
posted @ 2020-09-17 15:27 redufa 阅读(325) 评论(0) 推荐(0)
摘要: 1、全部读取 data=xlsread('data.xlsx'); xls 和 xlsx 格式的读取方式一样,csv格式用csvread 2、读取指定的行和列 b=xlsread('data.xlsx',1,'a1:b4'); columnB = xlsread('data.xlsx','B:C') 阅读全文
posted @ 2020-09-17 14:48 redufa 阅读(4098) 评论(0) 推荐(0)
摘要: 对应力数据进行清零 Sub 清零修正() Dim a Dim cout% '注意申明变量r要为长整型 Dim myfile As String, Arr(100) As String, Arr0(100) As String, arr1(10) As String On Error Resume N 阅读全文
posted @ 2020-09-14 17:05 redufa 阅读(256) 评论(0) 推荐(0)
摘要: Dir 会返回匹配 pathname 的第一个文件名。若想得到其它匹配 pathname 的文件名,再一次调用Dir,且不要使用参数。如果已没有合乎条件的文件,则 Dir 会返回一个零长度字符串 ("")。一旦返回值为零长度字符串,并要再次调用 Dir 时,就必须指定 pathname,否则会产生错 阅读全文
posted @ 2020-09-14 01:45 redufa 阅读(4264) 评论(0) 推荐(0)
摘要: 把这几天写的程序,指定给一个控件,变成了一键式了。 不足之处是,执行效率太低了。 Sub 一键计算() Dim Wb As Workbook, MyPath, File As String MyPath = ThisWorkbook.Path & "\" File = Dir(MyPath & "* 阅读全文
posted @ 2020-09-06 15:00 redufa 阅读(180) 评论(0) 推荐(0)
摘要: 第一个程序没问题,就是逻辑还没捋顺 第二程序的功能有问题,需要参考第一个进行修改 Sub tss() m = 2 For i = 2 To 100 If Cells(i, 12) <> "" Then j = i Do While Cells(j, 13) = "" j = j + 1 Loop I 阅读全文
posted @ 2020-09-05 15:54 redufa 阅读(240) 评论(0) 推荐(0)
摘要: 最后一个角度统计程序有问题: Sub tsh3() On Error Resume Next Sheets(1).Select: Call ts Sheets(2).Select: Call ts Sheets(3).Select: Call ts Sheets(4).Select: Call ts 阅读全文
posted @ 2020-09-04 02:04 redufa 阅读(184) 评论(0) 推荐(0)
摘要: 工况统计 sub ts() a = Time n = Cells(Rows.Count, 2).End(xlUp).Row Call ts1(n): dq (n): Call qd b = Time - a MsgBox b, n End Sub Sub ts1(n) For i = 2 To n 阅读全文
posted @ 2020-09-04 01:31 redufa 阅读(192) 评论(0) 推荐(0)
摘要: 基于数据对齐1.1的结果,把数据对齐2.2的程序修改下,得到规整的14个通道的数据 Sub 对齐() n = Cells(Rows.Count, 2).End(xlUp).Row j = 2 For i = 2 To n If Cells(i, 2) <> "" Then Cells(j, 16) 阅读全文
posted @ 2020-09-03 22:11 redufa 阅读(159) 评论(0) 推荐(0)
摘要: 对于前面4个id,11列数据,采样率一致,而且数据本身的数量也一样,基于这样的规律,直接把数据的空格去掉就好了 Sub 对齐() n = Cells(Rows.Count, 2).End(xlUp).Row j = 2 For i = 2 To n If Cells(i, 2) <> "" Then 阅读全文
posted @ 2020-09-03 21:55 redufa 阅读(205) 评论(0) 推荐(0)
摘要: 如上一篇,把字母用数组变量代替,优化了下,略有bug,待调试 Sub ts1()a = Timeaar1 = Array("L", "I", "F", "B")aar2 = Array("M", "L", "I", "F")n = Cells(Rows.Count, 2).End(xlUp).Row 阅读全文
posted @ 2020-09-03 21:02 redufa 阅读(134) 评论(0) 推荐(0)
摘要: 不同的ID发送的数据,导致在时间轴上有错位,最后三列的数据,采样率不一样。 目前的办法是,选取一个ID的数据,选取临近ID最为接近的数据。 该程序为最初版本,后续的优化方案有两个: 1、把用字母表示的列标用带字符串的数组代替,这样可以把四个小程序简化为一个,用一个for i =1 to 4 循环就好 阅读全文
posted @ 2020-09-03 20:48 redufa 阅读(227) 评论(0) 推荐(0)
摘要: 相关性检验 % x 为赋值,y为均值,N为分组数量 % mn为二维直方图统计,m,n为一维直方图统计 function [mn m n]=hist_2(x, y, N) cout=length(x); m=hist(x,N); n=hist(y,N); mn=zeros(N); % 区间间隔 d_x 阅读全文
posted @ 2020-09-03 11:43 redufa 阅读(915) 评论(0) 推荐(0)
摘要: 说明 一 二 function [p n N]=f_j(t,m,i) % p 为估计参数 % t为极值数据;m截断下限值;e为应力应变换算系数,一般取0.2; i为样本量 f=0.2*(t(:,1)-t(:,2));j=0.2*(t(:,1)+t(:,2))/2; f_f=find(f<m); f( 阅读全文
posted @ 2020-09-03 11:42 redufa 阅读(241) 评论(0) 推荐(0)
摘要: 说明: 1、 2、 % 主程序 % 4选1 弹簧应变数据 s=1 t=N_all{s}; % m=[0 100,200,400] %幅值截断下限 f=0.2*(t(:,1)-t(:,2)); m=max(f)*0.125; for i=1:length(m) [p n N]=f_j_goodman_ 阅读全文
posted @ 2020-09-03 11:39 redufa 阅读(366) 评论(0) 推荐(0)
摘要: Conover文献中提到8级载荷谱的划分方法: 相应步骤: 1、通过用Ncode的进行雨流计数的方法,统计出极值, 2、求出幅值和均值,由于载荷谱时域数据是应变数据,所以参考弹性模量的参数值,转换成应力。 3、去除小载荷 4、设定分组间隔 5、求出每组数据频数 PS: 第一个函数分组用了matlab 阅读全文
posted @ 2020-09-03 10:36 redufa 阅读(1291) 评论(0) 推荐(0)
摘要: 假定一个随机变量服从威布尔分布,另一个随机变量服从正态分布,考虑两者的比值或者通过其它表达式计算的结果服从何种分布。 我考虑用蒙特卡洛的方法进行实现。 步骤如下: 1、设定参数范围 2、对参数进行排列 3、进行1e6次仿真 4 、统计参数(后续与设定参数进行比较) 5、对于两个随机变量的比值进行参数 阅读全文
posted @ 2020-09-03 10:34 redufa 阅读(348) 评论(0) 推荐(0)
摘要: Sub 插值() Dim a Dim cout%, i%, k%, r&, c% '注意申明变量r要为长整型 Dim myfile As String, Arr(100) As String, Arr0(100) As String a = Array(1, 2, 3, 4, 5, 6, 7, 8, 阅读全文
posted @ 2020-09-03 10:22 redufa 阅读(490) 评论(0) 推荐(0)
摘要: 1、去除一组数据中的空值 2、通过对比时间,不同通道的数据点,认为某个时间点接近,就认为是一组数据 3、系统中导出的角度,和实际中略有不同,需要进行标准化 4、统计不同角度的占比 clc;clear; % 载入数据 % 去除0值 % 最终输出 d64;d65;d67 data604=load('Ou 阅读全文
posted @ 2020-09-03 10:11 redufa 阅读(264) 评论(0) 推荐(0)
摘要: ' 七个使用公式的例子''1、行标是变量的例子'2、列标用一维数组输入字符串做列标,行标是变量'3、用RC做相对引用'4、RC和变量混合'5、整列使用RC引用,避免使用循环'6、整个区域RC引用——相对引用/循环'7、整个区域RC应用——相对引用/不用循环Sub 数例() [a1] = "1a": 阅读全文
posted @ 2020-09-02 23:45 redufa 阅读(516) 评论(0) 推荐(0)