MATLAB - Veri Türleri
MATLAB, herhangi bir tür bildirimi veya boyut ifadesi gerektirmez. MATLAB yeni bir değişken adıyla karşılaştığında, değişkeni oluşturur ve uygun bellek alanını tahsis eder.
Değişken zaten mevcutsa, MATLAB orijinal içeriği yeni içerikle değiştirir ve gerektiğinde yeni depolama alanı tahsis eder.
Örneğin,
Total = 42
Yukarıdaki ifade 'Toplam' adında 1'e 1 bir matris oluşturur ve içinde 42 değerini depolar.
MATLAB'da Mevcut Veri Türleri
MATLAB, 15 temel veri türü sağlar. Her veri türü, bir matris veya dizi biçiminde olan verileri depolar. Bu matrisin veya dizinin boyutu minimum 0'a 0'dır ve bu, herhangi bir boyutta bir matris veya diziye kadar büyüyebilir.
Aşağıdaki tablo, MATLAB'da en sık kullanılan veri türlerini göstermektedir -
Sr.No. | Veri Türü ve Açıklaması |
---|---|
1 | int8 8 bitlik işaretli tamsayı |
2 | uint8 8 bitlik işaretsiz tamsayı |
3 | int16 16 bitlik işaretli tamsayı |
4 | uint16 16 bitlik işaretsiz tamsayı |
5 | int32 32 bitlik işaretli tamsayı |
6 | uint32 32 bitlik işaretsiz tamsayı |
7 | int64 64 bitlik işaretli tam sayı |
8 | uint64 64 bitlik işaretsiz tamsayı |
9 | single tek duyarlıklı sayısal veri |
10 | double çift kesinlikli sayısal veri |
11 | logical 1 veya 0 mantıksal değerleri, sırasıyla doğru ve yanlışı temsil eder |
12 | char karakter verileri (dizeler karakter vektörü olarak saklanır) |
13 | cell array her biri farklı bir boyut ve veri türünde bir dizi depolayabilen dizinlenmiş hücreler dizisi |
14 | structure C benzeri yapılar, her yapı, farklı bir boyut ve veri türünde bir dizi depolayabilen adlandırılmış alanlara sahiptir. |
15 | function handle bir işleve işaretçi |
16 | user classes kullanıcı tanımlı bir sınıftan oluşturulan nesneler |
17 | java classes Java sınıfından oluşturulan nesneler |
Misal
Aşağıdaki kodla bir komut dosyası oluşturun -
str = 'Hello World!'
n = 2345
d = double(n)
un = uint32(789.50)
rn = 5678.92347
c = int32(rn)
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
str = Hello World!
n = 2345
d = 2345
un = 790
rn = 5678.9
c = 5679
Veri Türü Dönüşümü
MATLAB, bir veri türünden diğerine bir değeri dönüştürmek için çeşitli işlevler sağlar. Aşağıdaki tablo, veri türü dönüştürme işlevlerini gösterir -
Fonksiyon | Amaç |
---|---|
kömür | Karakter dizisine (dize) dönüştür |
int2str | Tamsayı verilerini dizeye dönüştürme |
mat2str | Matrisi dizeye dönüştür |
num2str | Sayıyı dizeye dönüştür |
str2double | Dizeyi çift duyarlıklı değere dönüştür |
str2num | Dizeyi sayıya dönüştür |
native2unicode | Sayısal baytları Unicode karakterlere dönüştürme |
unicode2native | Unicode karakterlerini sayısal baytlara dönüştür |
base2dec | Temel N sayı dizesini ondalık sayıya dönüştür |
bin2dec | İkili sayı dizesini ondalık sayıya dönüştür |
dec2base | Dizedeki ondalık sayıyı temel N sayıya dönüştür |
dec2bin | Dize içinde ondalık sayıdan ikili sayıya dönüştürme |
dec2hex | Dize içinde ondalık onaltılık sayıya dönüştür |
hex2dec | Onaltılık sayı dizesini ondalık sayıya dönüştür |
hex2num | Onaltılık sayı dizesini çift duyarlıklı sayıya dönüştür |
num2hex | Tekleri ve çiftleri IEEE onaltılık dizelere dönüştürme |
hücre2mat | Hücre dizisini sayısal diziye dönüştür |
hücre2 yapısı | Hücre dizisini yapı dizisine dönüştür |
Cellstr | Karakter dizisinden hücre dizisi dizisi oluşturun |
mat2cell | Diziyi potansiyel olarak farklı boyuttaki hücrelere sahip hücre dizisine dönüştürün |
num2cell | Diziyi tutarlı boyuttaki hücrelerle hücre dizisine dönüştürün |
struct2cell | Yapıyı hücre dizisine dönüştür |
Veri Tiplerinin Belirlenmesi
MATLAB, bir değişkenin veri türünü tanımlamak için çeşitli işlevler sağlar.
Aşağıdaki tablo, bir değişkenin veri türünü belirleme işlevlerini sağlar -
Fonksiyon | Amaç |
---|---|
dır-dir | Durumu algıla |
isa | Girdinin belirtilen sınıfın nesnesi olup olmadığını belirle |
Iscell | Girdinin hücre dizisi olup olmadığını belirleme |
iscellstr | Girdinin dizelerin hücre dizisi olup olmadığını belirleme |
ischar | Öğenin karakter dizisi olup olmadığını belirleyin |
Isfield | Girişin yapı dizisi alanı olup olmadığını belirleme |
isfloat | Girdinin kayan noktalı dizi olup olmadığını belirleyin |
ishghandle | Tutamaç Grafikleri nesne tutamaçları için True |
isinteger | Girdinin tamsayı dizisi olup olmadığını belirle |
Isjava | Girdinin Java nesnesi olup olmadığını belirleyin |
isolojik | Girişin mantıksal dizi olup olmadığını belirle |
sayısal olmayan | Girişin sayısal dizi olup olmadığını belirle |
izobject | Girdinin MATLAB nesnesi olup olmadığını belirleyin |
gerçek | Girişin gerçek dizi olup olmadığını kontrol edin |
isscalar | Girdinin skaler olup olmadığını belirleyin |
isstr | Girişin karakter dizisi olup olmadığını belirleyin |
yapılandırılmış | Girdinin yapı dizisi olup olmadığını belirleme |
vektör | Girdinin vektör olup olmadığını belirleyin |
sınıf | Nesne sınıfını belirle |
nitelikleri doğrula | Dizinin geçerliliğini kontrol edin |
kim | Çalışma alanındaki değişkenleri boyutlar ve türlerle listeleyin |
Misal
Aşağıdaki kodla bir komut dosyası oluşturun -
x = 3
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
x = 23.54
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
x = [1 2 3]
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
x = 'Hello'
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
Dosyayı çalıştırdığınızda, aşağıdaki sonucu verir -
x = 3
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x = 23.540
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x =
1 2 3
ans = 0
ans = 1
ans = 1
ans = 0
x = Hello
ans = 0
ans = 0
ans = 1
ans = 0
ans = 0