Rumah > tutorial komputer > pengetahuan komputer > Memasang data populasi menggunakan Matlab

Memasang data populasi menggunakan Matlab

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2024-01-17 08:15:34
ke hadapan
1035 orang telah melayarinya

Memasang data populasi menggunakan Matlab

Matlab menyelesaikan masalah pemadanan data populasi

jelas;clc

% Ini adalah masalah regresi linear Gunakan matlab untuk menulis program berikut:

x=[1960,1961,1962,1963,1964,1965,1966,1967,1968]';

y=[29.72,30.61,31.51,32.13,32.34,32.85,33.56,34.20,34.83]';

subplot(221)

plot(x,y) ;

%Anggap model y=a0+a1*x+e;

x=[ones(9,1),x];

a=xy%a(1)=a0,a(2)=a1.

X=1960:2222;

Y=a(1)+a(2)*X;

subplot(222)

plot(X,Y);

%Sejak 2003, populasi meningkat dua kali ganda dalam 43 tahun dan melebihi 10 bilion pada 2077

%Penduduk dunia pada tahun 2002 ialah 5.52357 bilion

Cara menggunakan analisis regresi tak linear matlab

% Ambil logaritma kedua-dua belah y=x^a, kita ada log(y)=a*log(x). Ini Apabila bilangan persamaan ialah 10,000, dan nombor yang tidak diketahui ialah 1 (a), anda boleh menggunakan pembahagian matriks matlab untuk menyelesaikan persamaan bercanggah (menggunakan kaedah kuasa dua terkecil)

%Berikut ialah contoh saya menjana satu set 10,000 (x, y) urutan dengan a=1.45 Sudah tentu, saya menambah beberapa gangguan rawak (Anda boleh mencubanya. Jika anda tidak menambahnya, anda akan melakukannya pasti dapat 1.45)

>> a=1.45;

>> x=linspace(1,10,10000)'; %Perhatikan bahawa anda perlu menukarnya kepada penyelesaian vektor lajur

>> y=x.^a+0.5*rand(10000,1);

>> aa=log(x)log(y)

Bagaimana untuk melakukannya dalam MATLAB

Panjang X dan Y adalah berbeza X ialah 16 nombor dan Y ialah 8 nombor. Dan 8 aksara pertama X adalah kesemuanya 1. Jika 8 nombor terakhir X digunakan untuk mengundur Y, maka:

jelas;clc

X=[1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0; 1.5 2.0 3.0 4.5 7.5 9.1 10.5 12.0]'

Y=[5.6 6.6 7.2 7.8 10.1 10.8 13.5 16.5]'

p=polyfit(X(:,2),Y,1)

xx=linspace(1.5,12,30);

yy=polival(p,xx);

plot(X(:,2),Y,'o',xx,yy)

y=poly2sym(p,'x')

Hasil larian:

p =

0.8950 4.1575

y = 0.8950*x+4.1575

Atas ialah kandungan terperinci Memasang data populasi menggunakan Matlab. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan