找回密码
 注册
查看: 243|回复: 2
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

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

该用户从未签到

2#
发表于 2022-3-10 13:12 | 只看该作者
本帖最后由 Houseefe 于 2022-3-10 13:14 编辑 * M1 B  i9 t- h

  O- w1 E, Q- y* d数据处理的函数$ v" Y8 @- v( f
function  DealData = smoothdata(data)
& l' {  k* H5 pDealData = data(1:end-5,1:20);
( s& Q! L) ]; _end" w$ n- ]1 T" ?0 r5 h

该用户从未签到

3#
发表于 2022-3-10 13:33 | 只看该作者
clear all: f$ r9 @+ j( T" o: H. d
clc# f! R  C+ e, |
& p6 F, u' j6 I  H& t
%<=============================数据批量导入===============================>%
& C: z1 U' q( S& \) z; e1 d% u- ?5 X) Z# Y2 d5 i& A
RootPath = uigetdir;                   %选择任务路径,不可选到式样编号文件夹
" g$ G/ m6 H1 x6 E! l8 r$ j4 ^% FileFolder = fullfile(RootPath);       %选到式样编号文件夹的上一级文件夹即可
% C" ?) e8 V7 E* TDirOutput = dir(fullfile(RootPath));           %读取式样编号文件名,dir( i1 N7 @9 r. D; Y) Y
SimpleName = {DirOutput(3:end).name}';           %函数读出的结果为结构数组,
2 o& J: K1 l. E4 \: i8 r  w6 fLenSimFile = length(SimpleName);                                                 %把读到的文件名存为元胞数组
) f# J# t9 G" e2 O                                                
0 H5 Z' u/ B' V: T2 H1 p%自动批量导入数据  
3 e3 ?& m1 Y7 s) l3 M5 ]! K, Q6 x
' z" u: ]4 U' @6 _
$ Y3 W9 E3 m4 Q: D# J: Xfor i = 1 : LenSimFile
/ u* `: t7 O5 ?, t% v    ReadPath(i) = {[RootPath,'\',SimpleName{i}]};
" ?5 q2 y  C+ W( Y* h    TxtData = importdata([RootPath,'\',SimpleName{i}]);
& e5 Y& q( m* t' w. \  k2 O1 R) n2 s    %读取数据
; U8 N! X+ U6 j6 Y    [DealData{i}] = smoothdata(TxtData);                        , r6 g0 e9 a# g& k- G
end1 C& s  C( I3 `2 D2 U- R$ Y$ I/ k* Y
/ v" P+ \/ r1 Y1 S0 |* Z2 T2 o
%选择路径创建相关文件夹及文件
2 R" n2 _; u! b" E# e2 f% _
7 g1 E5 n6 [  bProtectPath = uigetdir('请选择保存路径');& n) j4 O1 ?0 r- B  J0 X
ProtectPath = [ProtectPath,'\','处理后的数据','\'];  C" p1 W1 R5 O
for i = 1 : LenSimFile4 X/ [# j; t9 I& @- D+ _
        mkdir(ProtectPath);  Y0 z! H4 q; u& ^! S
        ID = fopen(strcat(ProtectPath,'\',SimpleName{i}),'w+');! _% e6 M4 W' i( c0 R: f. _
        fprintf(ID,'%.6f\t%.6f\r\n',DealData{i});. a/ a# b" a+ ?6 i1 u" j
        fclose(ID);! z" i. i" F! c1 u' c8 k8 R( z
end
' w* b2 W; J" ]% J; t! H- B, H6 b1 J( B

! {7 v$ ]4 K( K% D% 说明:1.数据的存放方式为:文件夹\*.txt数据文件,使用是只要选择文件夹即可) ?- o' N- c4 s% E8 i1 F8 w
%      2.数据去噪的处理方法是按第一列升序排列后,按
2 |4 }  L" N% J5 E( t%      data( i , : ) = (data( i - 3 , : ) +data( i - 2, : )+data( i - 1 , : )+data( i , : )...
" s$ s5 ?* V) A) E/ M, G%      +data( i + 1 , : )+data( i + 2 , : )+data( i + 3 , : ))/7;方式平滑化处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-6-3 05:34 , Processed in 0.062500 second(s), 23 queries , Gzip On.

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

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

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