Matlab-learn(8):字符连接,分割,struct,逗号分隔列表,categorical,tabel函数

1.strjoin():连接字符串
例如:
some_char={'liuwen' 'cathy' 'xavier'}
>> strjoin(some_char)
ans =
    'liuwen cathy xavier'
>> strjoin(some_char,'-')
ans =
    'liuwen-cathy-xavier'
2. strsplit():分割字符串
例如:
 'liuwen-cathy-xavier'

>> strsplit(ans,'-')

ans =

  1×3 cell 数组

    {'liuwen'}    {'cathy'}    {'xavier'}
3. iscellstr():判断是否为元组
4. struct 类型:字段与值组成的信息对

一,定义——例如:
package=struct('item_num',123,'cost',18,'price',39.9500,'code','g')

package = 

  包含以下字段的 struct:

    item_num: 123
        cost: 18
       price: 39.9500
        code: 'g'
注意:
扩充时可以直接扩充:
package.quality='good'
则matlab会删除原struct新建一个把这个元素加进去,所以效率低
二,取用——例如:
package.item_num

ans =

   123
三,赋予
newpack=package

newpack = 

  包含以下字段的 struct:

    item_num: 123
        cost: 18
       price: 39.9500
        code: 'g'
四,替换
newpack.code='p'

newpack = 

  包含以下字段的 struct:

    item_num: 123
        cost: 18
       price: 39.9500
        code: 'p'
五,删除:rmfield()——
 newpack=rmfield(newpack,'code')

newpack = 

  包含以下字段的 struct:

    item_num: 123
        cost: 18
       price: 39.9500
5. isstruct() 判断是否为struct类型
6. isfield(struct类型变量名,字段)  判断字段是否在struct类型变量中
7.fieldnames(package)  返回所有字段名
8.struct类型数组
pack(1)=struct('name','hja','age',12,'id',1)

pack = 

  包含以下字段的 struct:

    name: 'hja'
     age: 12
      id: 1

>> pack(2)=struct('name','liud','age',52,'id',2)

pack = 

  包含以下字段的 1×2 struct 数组:

    name
    age
    id

注意:这样增加效率较慢,可第一次即初始化最后的空间状态,预留空间
如第一次使用就用pack(2),此时自动初始化了一,有了空间
pack(2)=struct('name','liud','age',52,'id',2)
9.初始化空struct 数组
 pack(3)=struct('id',[],'name',[],'age',[])

pack = 

  包含以下字段的 1×3 struct 数组:

    id
    name
    age

>> pack(1)

ans = 

  包含以下字段的 struct:

      id: []
    name: []
     age: []
10.逗号分隔列表赋给数组:
a1=2,a2='jdk',a3=rand(2,3)

a1 =

     2


a2 =

    'jdk'


a3 =

    0.8147    0.1270    0.6324
    0.9058    0.9134    0.0975

>> c={a1,a2,a3}

c =

  1×3 cell 数组

    {[2]}    {'jdk'}    {2×3 double}

>> [b1,b2,b3]=c{:}

b1 =

     2


b2 =

    'jdk'


b3 =

    0.8147    0.1270    0.6324
    0.9058    0.9134    0.0975

11.deal()函数
[b1,b2,b3]=deal(a1,a2,a3)
12.cell2mat()  将元组转化为数组
13.例子:
x=-pi:pi/10:pi
y1=sin(x)
y2=cos(x)
y3=sinh(x)
figure(1);
clf;
hold on;
dec={'o-','LineWidth',3,'MarkerEdgeColor','r','MarkerFaceColor','y'}
plot(x,y1,dec{:})
plot(x,y2,dec{:})
plot(x,y3,dec{:})


12.struct包含
line=struct('endpoint1',struct('x',2,'y',4),'endpoint2',struct('x',1,'y',6))

line = 

  包含以下字段的 struct:

    endpoint1: [1×1 struct]
    endpoint2: [1×1 struct]

>> line.endpoint1.x

ans =

     2

13.categorical():将元组用序号标记
cate_cat=categorical([2 3],[1:4],cate,'Ordinal',true)

cate_cat = 

  1×2 categorical 数组

     d      sf 

14.table() 数组
names={'Harry','Sally','Jose'};
heights=[185;133;210];
weight=[74;65.4;72.2];
paients=table(weight,heights,'RowNames',names)
paients(1:2,1)

paients(:,"heights")
summary(paients)

输出:
paient

paients =

  3×2 table

             weight    heights
             ______    _______

    Harry       74       185  
    Sally     65.4       133  
    Jose      72.2       210  


ans =

  2×1 table

             weight
             ______

    Harry       74 
    Sally     65.4 


ans =

  3×1 table

             heights
             _______

    Harry      185  
    Sally      133  
    Jose       210  


Variables:

    weight: 3×1 double

        Values:

            Min         65.4  
            Median      72.2  
            Max           74  

    heights: 3×1 double

        Values:

            Min         133   
            Median      185   
            Max         210   

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

linalw

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值