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
Matlab-learn(8):字符连接,分割,struct,逗号分隔列表,categorical,tabel函数
最新推荐文章于 2024-04-29 20:50:56 发布