Jarek Statinowy

Jarek Statinowy Z zapałem do pracy

Temat: Hellwig - trzy największe H

Witam

Napisałem program który mi oblicza które zmienne ma wziąć do modelu wykorzystując metodę Hellwiga
Chciałbym jednak by program mi na końcu wypisał trzy największe H i zmienne które mu odpowiadają

np.

#wczytanie macierzy korelacji między zmiennymi(r) i R-korelacja XY
r=rbind(c(1,-0.6,0.2,0.7),c(-0.6,1,-0.1,0.5),c(0.2,-0.1,1,0.6),c(0.7,0.5,0.6,1))
R<-c(0.4,-0.8,0.2,0.7)

N=length(R) #oblicza ilość zmiennych objaśniających
M=2^N-1 #oblicza ilość kombinacji 0-1
r=as.matrix(abs(r)) #tworzy wartości bezwzględne i macierz

tab=as.matrix(expand.grid(rep(list(0:1), N)))[-1,] #tworzy macierz 0-1 kombinacji

wyniki=matrix(0,M,N) #tworzy macierz 0 na wyniki cząstkowe pojemności

#obliczenia i wynik
for(i in 1:M)
{
for(j in 1:N)
{
if(tab[i,j]!=0){wyniki[i,j]=(R[j]^2)/(tab[i,]%*%(as.vector(r[,j])))}
}
}

maks=which.max(rowSums(wyniki))
tab[maks,]

sumyH=matrix(0,M,1)
for(k in 1:M){sumyH[k]=rowSums(wyniki)[k]} #zapisuje duże H w wektorze

I teraz chce by program zwrócił mi
Hmax ..................kombinacja 0-1 zmiennych dla tego H
Hmax(prawie).....kombinacja 0-1 zmiennych dla tego H
Hmax(prawie prawie)....kombinacja 0-1 zmiennych dla tego H
To może być w formie macierzy

Pozdrawiam i z góry dzięki za pomoc.Ten post został edytowany przez Autora dnia 09.02.16 o godzinie 15:48

Temat: Hellwig - trzy największe H

Używaj znaczników Code, bo to, co wklejasz, jest kompletnie nieczytelne.
Jarek Statinowy

Jarek Statinowy Z zapałem do pracy

Temat: Hellwig - trzy największe H

Już poprawiam - to mój program


#wczytanie macierzy korelacji między zmiennymi(r) i R-korelacja XY
r=rbind(c(1,-0.6,0.2,0.7),c(-0.6,1,-0.1,0.5),c(0.2,-0.1,1,0.6),c(0.7,0.5,0.6,1))
R<-c(0.4,-0.8,0.2,0.7)

N=length(R) #oblicza ilość zmiennych objaśniających
M=2^N-1 #oblicza ilość kombinacji 0-1
r=as.matrix(abs(r)) #tworzy wartości bezwzględne i macierz

tab=as.matrix(expand.grid(rep(list(0:1), N)))[-1,] #tworzy macierz 0-1 kombinacji

wyniki=matrix(0,M,N) #tworzy macierz 0 na wyniki cząstkowe pojemności

#obliczenia i wynik
for(i in 1:M)
{
for(j in 1:N)
{
if(tab[i,j]!=0){wyniki[i,j]=(R[j]^2)/(tab[i,]%*%(as.vector(r[,j])))}
}
}

maks=which.max(rowSums(wyniki))
tab[maks,]

sumyH=matrix(0,M,1)
for(k in 1:M)
{
sumyH[k]=rowSums(wyniki)[k]
} #zapisuje duże H w wektorze


Chce by program wypisał mi trzy największe H (wartość) (wskazniki pojemności informacji to się chyba nazywa) i kombinację zmiennych dla tych H)Ten post został edytowany przez Autora dnia 10.02.16 o godzinie 09:10
Jarek Statinowy

Jarek Statinowy Z zapałem do pracy

Temat: Hellwig - trzy największe H

Witam

Chciałem zapytać czy może i w tym temacie ktoś coś wymyślił.

Bardzo mi o tym zależny by się dowiedzieć jak wypisać trzy największe wartości wraz z kombinacją zmiennych odpowiadających tym wartościom.

Z góry dzięki



Wyślij zaproszenie do