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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

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

该用户从未签到

2#
发表于 2022-3-10 13:12 | 只看该作者
本帖最后由 Houseefe 于 2022-3-10 13:14 编辑
) X  a! @! K, C3 s8 S. w5 {
, D1 V  N" q' [( Z( V$ C数据处理的函数
+ O) e( F0 [/ M) w" `function  DealData = smoothdata(data)
' m# K1 ]& B' L! s7 J7 QDealData = data(1:end-5,1:20);
; q. t! V3 D  Rend
, `; f  w: Z7 p: ]/ l9 P

该用户从未签到

3#
发表于 2022-3-10 13:33 | 只看该作者
clear all# A! F9 E* F4 N4 t5 I# G
clc
8 d; v2 p9 w9 `5 z" A9 v8 f7 l! ?
; z. X, X' m3 P1 \. O: A: x%<=============================数据批量导入===============================>%$ J7 I, ]: v: z$ F- Z) i0 O2 b( j

' H! \+ V3 C) j6 s- ?" _RootPath = uigetdir;                   %选择任务路径,不可选到式样编号文件夹
; y  |. T' q3 r7 |0 \) I  s% FileFolder = fullfile(RootPath);       %选到式样编号文件夹的上一级文件夹即可' X' C8 }  M5 ]+ K9 a
DirOutput = dir(fullfile(RootPath));           %读取式样编号文件名,dir+ M) a5 @- F! z& O+ l. W: o7 w6 [/ U
SimpleName = {DirOutput(3:end).name}';           %函数读出的结果为结构数组,
# \& l: P. m9 G* W7 {LenSimFile = length(SimpleName);                                                 %把读到的文件名存为元胞数组5 B. M/ n) o2 u7 {
                                                + W5 B4 C. J* J, w& O
%自动批量导入数据  & N- C* p& ~( Y) y; h! i
( ^0 U. @- u% w) R, i( N  o& g' k

7 ~3 B- U" M2 d/ n* |6 Y' R  kfor i = 1 : LenSimFile
, S7 F; l+ v( d9 P2 k    ReadPath(i) = {[RootPath,'\',SimpleName{i}]};
# A, W+ w9 V" `2 J, ^% F' ]$ _    TxtData = importdata([RootPath,'\',SimpleName{i}]);
6 x( ~1 U$ s+ S6 C* N9 b* J' t    %读取数据
% I8 Q) u6 M, }+ R* F    [DealData{i}] = smoothdata(TxtData);                        2 @6 a% Z: h# T7 k+ T% n
end
! I( Z$ ^( l& r! i
, e2 j# b' W% c8 S%选择路径创建相关文件夹及文件) O8 R$ l) }3 A! ]
1 r4 ~; X% a$ W* {6 y. {+ G; }) E
ProtectPath = uigetdir('请选择保存路径');
4 |  |( X- o+ z* \. X: y/ @: jProtectPath = [ProtectPath,'\','处理后的数据','\'];
7 i4 X! s  Q% T& V( w9 }: ~for i = 1 : LenSimFile8 p7 P( |9 }! ^( g
        mkdir(ProtectPath);
& u; F6 ]7 v2 b' {        ID = fopen(strcat(ProtectPath,'\',SimpleName{i}),'w+');
( \* L, l' E% Z' o1 u        fprintf(ID,'%.6f\t%.6f\r\n',DealData{i});
; P* e8 j2 U, B% _/ r        fclose(ID);$ y3 L2 A- Z: C6 i0 J
end
# w8 Z8 G- k& t0 H  C" {
) b  y! h( r' k4 Z/ k  d& _7 G% i+ s3 Y4 L. I5 u4 {" \/ u6 l4 [
% 说明:1.数据的存放方式为:文件夹\*.txt数据文件,使用是只要选择文件夹即可! C* e' t9 X1 @; j& O( o
%      2.数据去噪的处理方法是按第一列升序排列后,按; Z# `: v4 _" T2 Z
%      data( i , : ) = (data( i - 3 , : ) +data( i - 2, : )+data( i - 1 , : )+data( i , : )...
4 k* W% Q0 s( a# c  c%      +data( i + 1 , : )+data( i + 2 , : )+data( i + 3 , : ))/7;方式平滑化处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-4 21:18 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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