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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
麻烦高手指点一下,一个data文件夹里面有36个txt文件从1到36.txt,需要批量导入matlab工作空间,然后将每个txt文件里提取(1:end-5,1:20)矩阵,然后再保存,怎么代码实现啊?% Z0 Y3 C2 R$ N2 {9 P9 h

该用户从未签到

2#
发表于 2022-3-10 13:12 | 只看该作者
本帖最后由 Houseefe 于 2022-3-10 13:14 编辑
6 `- ^6 R2 `2 ]* |& r0 g/ B2 H1 F5 D8 _. [# ?3 c4 N5 Y
数据处理的函数3 B; s+ g" J  a
function  DealData = smoothdata(data)
: Y/ I% P. G& h6 D7 {DealData = data(1:end-5,1:20);- n: ]) G( c2 ?2 o& w3 ^+ r" j7 S- b
end
* I8 X% h0 b2 g. c3 S

该用户从未签到

3#
发表于 2022-3-10 13:33 | 只看该作者
clear all
$ U( k# X  E. G5 E- \" m$ O6 K$ Pclc
+ b5 S3 D6 r5 u7 X/ J
8 @: C) l/ \2 u%<=============================数据批量导入===============================>%
6 H/ L$ e# Z7 R: G1 a, A! K+ C3 p4 S9 D; a$ }% k" E
RootPath = uigetdir;                   %选择任务路径,不可选到式样编号文件夹) n* B) W' u" o4 h0 t$ A0 X
% FileFolder = fullfile(RootPath);       %选到式样编号文件夹的上一级文件夹即可
4 m0 U7 a- ]- M& _6 h& `DirOutput = dir(fullfile(RootPath));           %读取式样编号文件名,dir
  z  Y8 m1 {/ e6 NSimpleName = {DirOutput(3:end).name}';           %函数读出的结果为结构数组,
8 s# z4 x  |# O9 O% iLenSimFile = length(SimpleName);                                                 %把读到的文件名存为元胞数组% L5 x6 _+ ^& K, k& |8 ]3 ?
                                                " u, [2 s4 w! x8 |/ y% n
%自动批量导入数据  3 R, p1 X/ S: P* e, z" L# @
" Y% W- K+ y3 `; y$ [' w

  R. O$ C) x5 H5 O' Q( nfor i = 1 : LenSimFile7 `  \5 [  s4 i
    ReadPath(i) = {[RootPath,'\',SimpleName{i}]};
; P" l4 j% k8 w" X( \    TxtData = importdata([RootPath,'\',SimpleName{i}]);
2 X1 v* u! a4 W8 x0 U& o' I$ E    %读取数据3 ?6 j$ @, i# z2 u7 D4 \
    [DealData{i}] = smoothdata(TxtData);                        - _( j$ I# g) w) T4 S1 k# l  ~
end% A. t6 U# O( Q$ G1 ^" {

" i- d5 B- c$ C0 {8 j/ `( h%选择路径创建相关文件夹及文件
3 H! D! y, z: a2 c1 X9 b5 [4 z
6 R$ i9 w* N+ {* U/ B6 r0 mProtectPath = uigetdir('请选择保存路径');+ m. y# z( a% a# d- z
ProtectPath = [ProtectPath,'\','处理后的数据','\'];
4 L' D- V4 M8 k) }for i = 1 : LenSimFile
  H1 @! e' P1 D        mkdir(ProtectPath);
2 w  Q# v4 d( Q( a& ], ]5 u' u, F" E' K        ID = fopen(strcat(ProtectPath,'\',SimpleName{i}),'w+');
' J+ z+ X, m9 S/ Z        fprintf(ID,'%.6f\t%.6f\r\n',DealData{i});/ X; T+ }" Y) W3 B5 e& l2 U8 E
        fclose(ID);
* k+ l6 U9 U% y  ?+ j; {/ T2 @' k; Xend
. A  D0 ]/ b  L3 d" U7 ~
4 F) L( n* c8 z3 p4 y7 c' s7 ^  b3 }% g3 s1 \" g7 r" [7 p2 H
% 说明:1.数据的存放方式为:文件夹\*.txt数据文件,使用是只要选择文件夹即可/ `. E# x" x7 @
%      2.数据去噪的处理方法是按第一列升序排列后,按
  [& j- b+ d% f& A! D%      data( i , : ) = (data( i - 3 , : ) +data( i - 2, : )+data( i - 1 , : )+data( i , : )...0 N/ O) _  M( M  K1 h7 N' ?8 b5 I+ c
%      +data( i + 1 , : )+data( i + 2 , : )+data( i + 3 , : ))/7;方式平滑化处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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