找回密码
 注册
关于网站域名变更的通知
查看: 283|回复: 2
打印 上一主题 下一主题

如何批量导入txt文件并处理

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-3-10 10:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
麻烦高手指点一下,一个data文件夹里面有36个txt文件从1到36.txt,需要批量导入matlab工作空间,然后将每个txt文件里提取(1:end-5,1:20)矩阵,然后再保存,怎么代码实现啊?
5 p- W* N1 J- H& _

该用户从未签到

2#
发表于 2022-3-10 13:12 | 只看该作者
本帖最后由 Houseefe 于 2022-3-10 13:14 编辑
0 g3 i" |+ w* a$ D3 k
' l) ^3 e0 C8 X" K数据处理的函数
3 G2 Y: {  [' i3 o4 T; qfunction  DealData = smoothdata(data)/ {7 H4 E- b% \- [
DealData = data(1:end-5,1:20);
9 f- W; t% d  N% @end8 I) }) B- i  `3 q' }: p

该用户从未签到

3#
发表于 2022-3-10 13:33 | 只看该作者
clear all
9 R1 J& M: A, f! m" T2 K% t! iclc( b# h5 u, G. e
* ]9 Q& x. s' `: g) q; D  z5 Z
%<=============================数据批量导入===============================>%. T7 F2 b) T, D* g3 H
, T; M" O/ H% A; E  t6 f
RootPath = uigetdir;                   %选择任务路径,不可选到式样编号文件夹. ^! h4 B. ^1 h' N1 u4 d0 U
% FileFolder = fullfile(RootPath);       %选到式样编号文件夹的上一级文件夹即可
6 E3 _- x1 k0 P7 i& Q! U* TDirOutput = dir(fullfile(RootPath));           %读取式样编号文件名,dir
! ^; n/ q! K1 P( L: QSimpleName = {DirOutput(3:end).name}';           %函数读出的结果为结构数组,
' ~2 R% A$ y2 v! E+ |2 T5 |( PLenSimFile = length(SimpleName);                                                 %把读到的文件名存为元胞数组
  _1 g' d5 E& T6 M4 g* Q! A                                                
1 q$ {7 R, H4 j/ t6 G%自动批量导入数据  
% M9 S1 @0 ]/ W+ \/ i0 o
* }- N+ c8 x; ^  _! k- G" c. r- C* T: \/ @% l+ r' _
for i = 1 : LenSimFile) S$ N+ e! r: I. z
    ReadPath(i) = {[RootPath,'\',SimpleName{i}]};% v& q5 H9 i$ h
    TxtData = importdata([RootPath,'\',SimpleName{i}]);
# \+ Y$ I$ J. W& e. @    %读取数据( C+ V/ h2 F2 ^% M6 @5 {2 M0 N
    [DealData{i}] = smoothdata(TxtData);                        
% S1 w2 L. [% tend+ K  F" o8 y" p# ]; V% I) o6 w/ H9 u; r* B

6 P0 ]. E5 k6 @2 z3 O; h%选择路径创建相关文件夹及文件
7 |# @- c  }5 Q- k  [* O6 g9 z# I$ R/ V* v  m; v
ProtectPath = uigetdir('请选择保存路径');. }. `. r* T; [4 U/ _1 P
ProtectPath = [ProtectPath,'\','处理后的数据','\'];; Y) d* c7 L' X# t# P
for i = 1 : LenSimFile# k0 {  n; l) K6 w% t
        mkdir(ProtectPath);
; }6 b) ~. J* N1 `) i% K- E- r        ID = fopen(strcat(ProtectPath,'\',SimpleName{i}),'w+');
% \0 o- C$ R; Y* l( T8 W1 f! A        fprintf(ID,'%.6f\t%.6f\r\n',DealData{i});
5 f- h& P' q5 O, a1 W& e- U        fclose(ID);( n# K3 l: D, `/ j& w4 D3 x  L
end
5 A+ X& s& `9 h* a+ l0 K, U( B( t& o. T5 F5 o

1 V1 ^' t" O0 i, S+ o4 a4 k% 说明:1.数据的存放方式为:文件夹\*.txt数据文件,使用是只要选择文件夹即可
9 r; u' T: l. Y1 w( k%      2.数据去噪的处理方法是按第一列升序排列后,按
, f) e5 i5 C! u" l, ?* H+ s%      data( i , : ) = (data( i - 3 , : ) +data( i - 2, : )+data( i - 1 , : )+data( i , : )...- Q5 w9 Q  }9 f% k. R, u! ?
%      +data( i + 1 , : )+data( i + 2 , : )+data( i + 3 , : ))/7;方式平滑化处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 17:52 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表