matlab逐行读取text文件,编写函数提取需要的文字
在数学建模中遇到的数据比较难处理,而且给的是text格式,自己想了好长时间才编出来,现在分享一下,可以交流学习
目标的text文件是

只提取里面的数据
需要自编函数
clc,clear
path='D:\matlab文件\zz\';
namelist=dir([path,'*.txt']);
nam=length(namelist);
file=dir('zz\*.txt');
sign=1;
for n=1:nam
filename{n}=[path,namelist(n).name];
% [data1,data2]=textread(filename,'%s%s','delimiter', ':','headerlines',6);
% [a1,a2]=size(data2);
% for i=1:a1
% s(i,:)=char(data2(i,:));
% end
% datas(2)
% for i=1:a1
% s(i)=regexp(datas(i,:),' ','split')
% end
% for i=1:a1
% s=char(data2(i));
% datas(i)='s';
% end
% fid=fopen('data.txt','w');
% fprintf(fid,'%c',data2);
% fclose(fid);
s=[]
fg=4
fid=fopen(filename{n},'r');
while ~feof(fid)
str = fgetl(fid)
em=isempty(str)
if em==0
if str(1)=='1'&&str(2)=='1'
continue
end
if str(1)=='时'
st1=str(1,4:7);
st2=str(1,9:10);
st3=str(1,12:13);
s(1)=str2num(st1);
s(2)=str2num(st2);
s(3)=str2num(st3);
end
if str(1)=='0'||str(1)=='1'||str(1)=='2'||str(1)=='3'||str(1)=='4'
[a1,a2]=size(str);
for i=1:a2
if str(i)==':'
left=i+1;
break
end
end
right=a2;
for i=left:a2
if str(i)==' '
right=i
break
end
end
s(fg)=str2num(str(1,left:right));
fg=fg+1;
end
end
end
sx(sign,:)=s;
sign=sign+1;
end
clc,clear
data=xlsread('zz0.xlsx');
[a1,a2]=size(data);
data0=[]
flag=1;
for i=1:a1
if data(i,8)>100&&data(i,11)>10
data0(flag,:)=data(i,:);
flag=flag+1;
end
end
xlswrite('zq.xlsx',data0)
clc,clear
data=xlsread('zq.xlsx');
[a1,a2]=size(data);
datas=[]
flag=1;
datas(1,:)=data(1,:);
% if i<=264
% pp=0;
% while data(i,2)==datas(i-1,:2)&&data(i,3)==data(i-1,:3)
% pp=pp+1;
% i=i+1;
% end
% if
for i=2:a1
if data(i,2)==datas(flag,2)&&data(i,3)==datas(flag,3)
blan=data(i,:)+datas(flag,:);
blan=blan./2;
datas(flag,:)=blan;
else
flag=flag+1;
datas(flag,:)=data(i,:);
end
end
xlswrite('zq1.xlsx',datas)
matlab逐行读取text文件,编写函数提取需要的文字的更多相关文章
- 3.C++逐行读取txt文件数据,利用getline -windows编程
引言:今天学会了getline的用法,顺手编写一个逐行读取txt文件的程序.关于getline的用法可以看我之前的博客:2.C++标准库函数:getline函数 定界流输入截取函数 -zobol的 ...
- 几个PHP读取整个文件的函数readfile()、fpassthru()和file()
2.7.4 读取整个文件:readfile().fpassthru()和file()除了可以每次读取文件一行外,还可以一次读取整个文件.PHP提供了4种不同的方式来读取整个文件.第一种方式是rea ...
- 别再用"while (!feof(file))"来逐行读取txt文件了!
起因 执行一个C/C++程序出现segment fault.它逐行读取文本文件,每一行是一个图片名字,然后读图.处理图像,etc. 发现最后一次读取的文件名不存在(空的). 正确的逐行读取txt文件 ...
- matlab批量读取一个文件夹里类似命名的mat文件
参考网址: Matlab读取同一路径下多个txt或mat文件总结 matlab 批量读取数据文件.mat .dat 整理:matlab批量读入数据文件的方法 首先命名方式体现在只是名字里数字有变化,其 ...
- python 逐行读取txt文件
逐行读取txt文件 path = r'D:\123456\1.txt'with open(path, 'r', encoding='utf-8') as f: for line in f: ...
- EPANET中读取INPUT文件的函数文件——INPUT3.C
/* ********************************************************************** INPUT3.C -- Input data par ...
- php逐行读取txt文件写入数组的方法
使用说明: 采用fopen 方法,逐行读取数据,并使用feof($fp) 判断是否文件截止,最后通过filter() 方法,去除空白行,得到所需数据 $file = fopen("user ...
- EPANET中读取INPUT文件的函数文件——INPUT1.C/INPUT2.C/INPUT3.C
首先介绍下这3个文件的关系:可以说INPUT1.C的函数粒度最大,它的函数getdata()就完成了整个INPUT文件数据的读入,该函数又调用了INPUT2.C中的部分函数,INPUT2.C文件中的函 ...
- matlab初学者_脚本文件调用函数文件
问题: matlab里面有两种文件,一种是脚本文件,一种是函数文件,为了模块化程序,我们需要把专门的功能写成一个函数封装到某个函数文件里面. 那么来看如何在脚本文件里调用函数文件中的函数. 注意点: ...
随机推荐
- MySQL8.0数据库基础教程(二)-理解"关系"
1 SQL 的哲学 形如 Linux 哲学一切都是文件,在 SQL 领域也有这样一条至理名言 一切都是关系 2 关系数据库 所谓关系数据库(Relational database)是创建在关系模型基础 ...
- HYSBZ_1854_并查集
http://www.lydsy.com/JudgeOnline/problem.php?id=1854 每次判断每组两个数的根,若不等,则小的遍历1,大的为根,若相等,则说明前面的小的都遍历过,根遍 ...
- BZOJ 1046 [HAOI2007]上升序列(LIS + 贪心)
题意: m次询问,问下标最小字典序的长度为x的LIS是什么 n<=10000, m<=1000 思路: 先nlogn求出f[i]为以a[i]开头的LIS长度 然后贪心即可,复杂度nm 我们 ...
- 开发中常见的common.js--1
common.js 1.基于代码重用的目的,方便在页面中调用: 2.跟普通的js包含文件并没有其他不一样,主要是一些js经常用到的函数,或者字符串.数组方法的简单扩展: 3.封装的兼容性的方法.[po ...
- DataGuard---->主库和备库都配置 db_file_name_convert和log_file_name_convert的作用
一.参数说明 [1] db_file_name_convert db_file_name_convert 主数据库和备用数据库的数据文件转换目录对映(如果两数据库的目录结构不一样),如果有多个对映,逐 ...
- 实例探究Aspectj,解析SentinelResourceAspect
为了学习SentinelResourceAspect,这篇文章里我用Aspectj实现一个AOP实例,一起来看下. Sentinel 提供了 @SentinelResource 注解用于定义资源,支持 ...
- Request库的安装与使用
Request库的安装与使用 安装 pip install reqeusts Requests库的7个主要使用方法 requests.request() 构造一个请求,支撑以下各方法的基础方法 req ...
- 申请Let’s Encrypt通配符HTTPS证书(certbot ACME v2版)
1.获取certbot-auto# 下载 # 下载 wget https://dl.eff.org/certbot-auto # 设为可执行权限 chmod a+x certbot-auto 2.开始 ...
- Asp.net core下利用EF core实现从数据实现多租户(3): 按Schema分离 附加:EF Migration 操作
前言 前段时间写了EF core实现多租户的文章,实现了根据数据库,数据表进行多租户数据隔离. 今天开始写按照Schema分离的文章. 其实还有一种,是通过在数据表内添加一个字段做多租户的,但是这种模 ...
- golang搭建一个简单的web服务器
package main import ( "io/ioutil" "log" "net/http" ) func main() { htt ...