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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
麻烦高手指点一下,一个data文件夹里面有36个txt文件从1到36.txt,需要批量导入matlab工作空间,然后将每个txt文件里提取(1:end-5,1:20)矩阵,然后再保存,怎么代码实现啊?1 n3 K8 d! z7 i  G% t& c

该用户从未签到

2#
发表于 2022-3-10 13:12 | 只看该作者
本帖最后由 Houseefe 于 2022-3-10 13:14 编辑 ' j1 V/ z3 E0 M, w9 N; y
2 t6 o3 n. Z0 Q6 c9 ~
数据处理的函数- G$ _3 ]! G3 f2 O$ g1 n8 G
function  DealData = smoothdata(data)- v; m2 ?4 g/ h, C& D4 v0 \* [" f7 c
DealData = data(1:end-5,1:20);
: W. {# P& q* \+ `: P) n$ _- pend  @. }( W1 M' o! u9 X. ~

该用户从未签到

3#
发表于 2022-3-10 13:33 | 只看该作者
clear all
( D9 y2 J3 X' l5 s, F) ?clc$ U6 Q# H" b8 ]. r2 \3 o* j4 ?0 x, @

% p5 [. m% R; s7 [; f%<=============================数据批量导入===============================>%
0 v- i* |# v' Q* Z8 \/ b4 B  A" }) K& S; n9 V
RootPath = uigetdir;                   %选择任务路径,不可选到式样编号文件夹) R' s! m' ?2 n; A2 f- d& b
% FileFolder = fullfile(RootPath);       %选到式样编号文件夹的上一级文件夹即可' B6 E3 O% f1 T9 c- p* U" d
DirOutput = dir(fullfile(RootPath));           %读取式样编号文件名,dir
2 v7 G2 L- P' K) OSimpleName = {DirOutput(3:end).name}';           %函数读出的结果为结构数组,% u; f  e1 C; H$ \
LenSimFile = length(SimpleName);                                                 %把读到的文件名存为元胞数组
/ e2 U7 ~/ Q# N1 J3 o7 B                                                
, Y! N  [8 m+ c  D- P* C  G%自动批量导入数据  
* g% K8 c: {: a: {6 I
# K) Y5 e, @! H. e/ ]: j1 a
2 w) r1 H" g+ v* cfor i = 1 : LenSimFile
3 C  ?# o% H8 ~' e    ReadPath(i) = {[RootPath,'\',SimpleName{i}]};
; X6 [: ]$ |/ b6 ]9 A    TxtData = importdata([RootPath,'\',SimpleName{i}]);+ m, G* j1 s# u1 P
    %读取数据- @1 J' G4 R/ x$ u4 O% N
    [DealData{i}] = smoothdata(TxtData);                        
. G6 X0 D: t& n- D8 e% @2 T$ xend
5 D! q8 c8 P0 p- p
5 Q! {( `+ @1 M* v1 P3 z%选择路径创建相关文件夹及文件5 `' g1 v- }: I, r5 d) v

" }  h6 z; L% U9 \: nProtectPath = uigetdir('请选择保存路径');- j7 |0 I& Z  q' J- [! S2 q
ProtectPath = [ProtectPath,'\','处理后的数据','\'];
8 P7 Q5 s1 A% |for i = 1 : LenSimFile% g* d1 f5 q$ \1 r
        mkdir(ProtectPath);! p: K) l$ v- z$ J
        ID = fopen(strcat(ProtectPath,'\',SimpleName{i}),'w+');
0 t: o; I) r" A2 W5 R% Z2 P8 \% D0 {        fprintf(ID,'%.6f\t%.6f\r\n',DealData{i});  E3 H0 f3 w. ^$ V# J
        fclose(ID);$ R+ |- e4 c2 X+ x6 y4 D, N
end
- `/ ^9 B3 l- N
: G, }9 g. H6 C) l6 g  [+ e& k2 f( T/ Q/ @8 F; t1 n" l
% 说明:1.数据的存放方式为:文件夹\*.txt数据文件,使用是只要选择文件夹即可
! o' j) i( }2 P8 S- G: v8 k4 T" k%      2.数据去噪的处理方法是按第一列升序排列后,按
# E/ y* g# |0 n( z%      data( i , : ) = (data( i - 3 , : ) +data( i - 2, : )+data( i - 1 , : )+data( i , : )...
" T9 {) P- x9 d- t4 y3 |%      +data( i + 1 , : )+data( i + 2 , : )+data( i + 3 , : ))/7;方式平滑化处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-6-10 04:12 , Processed in 0.062500 second(s), 24 queries , Gzip On.

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

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

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