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

如何去掉txt文件里不想要的字符,和去掉这行

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-12-18 13:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x

, \9 Y3 M/ Z4 \& P7 @3 b; N比如我有个txt文件有3列的数据,前两列都是double型的数字,第三列有数字也有N.C.这样的字符串。如下所示(行数很多很多,为了方便举例只取前几行):
+ c$ b$ ?0 N  o$ g
6 W. S3 Y; @9 O0 j& d5 `543.6 765.4 65
( x! d% Q) s- G9 q+ w) O5 [+ R6 ~# W! S765.0 865.0 N.C.' a$ J  C4 E* ]- K7 g
654.8 762.3 54
7 k/ t) a* z2 m- q2 R2 s4 o5 p587.0 844.0 50
5 M) Y# N7 ]) u254.0 765.0 N.C.
! Q: K9 I. r6 a+ }' K% z* }……
7 N2 z7 ?8 P! J8 W; U4 w: Z% Y1 I! \: R! v; U9 a, j: T
我用testscan函数可以很容易的读取前两行,但第三行有数字有字符串就不太好处理。
  q8 Z/ S, a! p7 i6 U3 L, ~, D) O" @# C: N/ }# d% e5 H- @
请问如何把有N.C.的行给去掉呢?比如上例最终为:2 y; F3 k9 V- H+ }& y' ?

( ~5 r, C! _8 v8 M543.6 765.4 65" B- r/ L% P$ o$ Z+ \! `
654.8 762.3 54
# g; R  {4 U1 _7 P9 C: r* j) Z587.0 844.0 50

该用户从未签到

4#
发表于 2020-12-18 16:07 | 只看该作者
fid = fopen('新建文本文档.txt');
6 C; K: C7 J( z0 l/ P4 P) W7 Pdata =textscan(fid,'%s %s %s');3 r( Z$ T' ]3 H2 g$ A6 a6 l! m3 w# s# t
a = data(1,[1,2]);4 z# P. q( h  ^7 F- _; o
aa = cell2mat(cellfun(@(x) str2num(char(x)),a,'UniformOutput',false));
/ d5 F! a; W0 @/ x5 r& P% ab = data{:,3};
( z, ]5 ?  F2 n1 |c = cellfun(@(x) str2num(char(x)),b,'UniformOutput',false);
& T3 i  b/ D- `$ v7 z% Nindex=cell2mat(cellfun(@(x) ~isempty(x),c,'UniformOutput',false));
$ S0 H% m* a0 v8 V* E7 }- c' rresult = [aa(index,: ), vertcat(c{index})];, ~$ g' _8 h* t% W9 i
fclose(fid);
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 14:33 , Processed in 0.171875 second(s), 23 queries , Gzip On.

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

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

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