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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
麻烦高手指点一下,一个data文件夹里面有36个txt文件从1到36.txt,需要批量导入matlab工作空间,然后将每个txt文件里提取(1:end-5,1:20)矩阵,然后再保存,怎么代码实现啊?9 [% ^9 g9 @% _# n2 r: ^6 M

该用户从未签到

2#
发表于 2022-3-10 13:12 | 只看该作者
本帖最后由 Houseefe 于 2022-3-10 13:14 编辑 & E0 ^8 S6 O) c6 c: X$ G; X

2 a) m8 h  B" x, |$ T9 f4 ?2 d数据处理的函数
1 F4 o) e2 ~7 N( N4 P) tfunction  DealData = smoothdata(data)
4 M- i% t$ N, {8 ]. G2 v8 [# GDealData = data(1:end-5,1:20);
( x) ^; [; _2 S9 |+ I8 n1 Vend- {" v( |, u+ x% s) e

该用户从未签到

3#
发表于 2022-3-10 13:33 | 只看该作者
clear all
  F* ]. b7 I5 w+ pclc
3 H- d2 I1 O' f" v
$ O" w3 |6 Q/ H* t2 x, Y%<=============================数据批量导入===============================>%
5 ?3 k+ x3 K9 ]# O7 G1 [. n8 V8 }. t4 N" F( w- y) _7 @
RootPath = uigetdir;                   %选择任务路径,不可选到式样编号文件夹* w4 E5 C% m& d, K, N
% FileFolder = fullfile(RootPath);       %选到式样编号文件夹的上一级文件夹即可
6 J; w$ o1 }' q+ x3 yDirOutput = dir(fullfile(RootPath));           %读取式样编号文件名,dir2 p2 X. d$ L$ ~% R* m; X) E8 c
SimpleName = {DirOutput(3:end).name}';           %函数读出的结果为结构数组,: @; I) V+ I- C, b9 ^& F
LenSimFile = length(SimpleName);                                                 %把读到的文件名存为元胞数组
3 \" \* t) _6 i, w* C) ^  v                                                
/ A) k) y6 f; {' D! n%自动批量导入数据  
# z. S# m+ C" C9 B. g: R/ y( y
! k* v% ^0 q# \6 q8 X% C$ e0 W' f* l" w' {" o5 [7 E
for i = 1 : LenSimFile% F" k5 }# r1 Z" c! j
    ReadPath(i) = {[RootPath,'\',SimpleName{i}]};  z  U3 w+ X8 [) G' I; Q
    TxtData = importdata([RootPath,'\',SimpleName{i}]);
3 \- M% q/ c9 ^    %读取数据9 A" _' r: B. m: {- L
    [DealData{i}] = smoothdata(TxtData);                        , S& @1 ?4 g. l' D( l5 G
end+ N. B) O6 t- t4 s+ ^
* b4 X7 [6 r. l7 n  ?7 E: ^" G
%选择路径创建相关文件夹及文件
+ Z/ r% A# h5 r& c4 B6 ~
/ @% E0 Y" G2 g4 N1 F9 ~ProtectPath = uigetdir('请选择保存路径');  `$ b# k& l+ v  [# A% S
ProtectPath = [ProtectPath,'\','处理后的数据','\'];
0 J4 L, q: \2 z2 F* ufor i = 1 : LenSimFile8 S$ M; Q/ V7 m
        mkdir(ProtectPath);
3 }9 T% _# l! r' R        ID = fopen(strcat(ProtectPath,'\',SimpleName{i}),'w+');: l; j4 {( a1 g# ]. J
        fprintf(ID,'%.6f\t%.6f\r\n',DealData{i});
% C7 _3 w( J2 j8 ?# S        fclose(ID);0 c7 ~* H+ C' g9 [6 K
end. n% s- o4 U  B2 F/ Z# p  c1 w% ^

2 t& j7 z7 v; O4 W2 a  X* r  W5 ?
! ]2 {; s; A7 A& O% 说明:1.数据的存放方式为:文件夹\*.txt数据文件,使用是只要选择文件夹即可
; E! v/ V5 |0 y. U0 I%      2.数据去噪的处理方法是按第一列升序排列后,按
. R) u; u0 g6 T, u, q& |  A! c%      data( i , : ) = (data( i - 3 , : ) +data( i - 2, : )+data( i - 1 , : )+data( i , : )...7 F9 d) T. i1 t& c3 J+ ?
%      +data( i + 1 , : )+data( i + 2 , : )+data( i + 3 , : ))/7;方式平滑化处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-12 06:36 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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