Já jsem pomocí R programovací jazyk. Předpokládejme, že mám následující data:
set.seed(123)
a = rnorm(100000,10,10)
b = rnorm(100000,10,10)
my_data = data.frame(a,b)
plot(my_data$a, my_data$b)
Když se podíváte na tato data:
head(my_data)
a b
1 4.395244 12.649934
2 7.698225 28.307475
3 25.587083 9.406217
4 10.705084 9.467906
5 11.292877 14.379042
6 27.150650 23.374490
Moje Otázka: existuje způsob, jak zjistit, jestli tento dataset obsahuje bod takový, že
- všechny hodnoty "a" je menší než-ová souřadnice tohoto bodu A
- všechny hodnoty "b" jsou menší než b-ová souřadnice tohoto bodu
Je tam takový způsob, jak zjistit, jestli tento dataset obsahuje "globální maximum"?
Například, jako červený bod výše. Vím, že ve většině případů, to je nepravděpodobné, že najít takový bod, když viděl, že bod s největší koordinovat nemusí nutně mít největší b-koordinovat a naopak:
#row with max value of "a"
which(my_data == max(my_data$a), arr.ind=TRUE)
row col
[1,] 23102 1
#row with max value of "b"
which(my_data == max(my_data$b), arr.ind=TRUE)
row col
[1,] 2071 2
#display row with max value of "a"
> my_data[23102,]
a b
23102 53.22815 4.500006
#display row with max value of "b"
> my_data[2071,]
a b
2071 15.85992 52.0609
Jak můžeme vidět, řádek s maximální hodnotou "a" neobsahuje max hodnotu "b".
Díky!!!
Poznámka: V reálném světě, to je často nemožné najít "globální maximum body", jako ve velké datové body "překrývání" (různé řádky obsahují maximální hodnoty z různých sloupců). V rámci optimalizační problémy, několik bodů, může často splňují tato kritéria a jsou považovány za vhodné - tyto body se nazývají "non-ovládal" a řekl, že se nachází na "Pareto Hranici" (zelená linka):