mam numpy tablicę, która posiada wektorów 4-wymiarowe, które posiadają następujący format (X, Y, Z, W)Filtrowanie numpy mikromacierzy opartych na największej wartości
rozmiar tablicy jest 4 x N. Teraz dane, które posiadam, znajdują się w miejscach, w których mam (x, y, z) lokalizacje przestrzenne, a w ma pewien szczególny pomiar w tej lokalizacji. Teraz może być wiele pomiarów związanych z pozycją (x, y, z) (mierzoną jako pływaki).
Co chcę zrobić, to odfiltrować tablicę, aby uzyskać nową tablicę, w której otrzymam maksymalny pomiar odpowiadający każdej z pozycji (x, y, z).
Więc jeśli moje dane jak:
x, y, z, w1
x, y, z, w2
x, y, z, w3
gdzie W1 jest większa niż W2 i W3, przefiltrowane dane byłoby:
x, y, z, w1
Więc bardziej konkretnie, że mam dane, takie jak:
[[ 0.7732126 0.48649481 0.29771819 0.91622924]
[ 0.7732126 0.48649481 0.29771819 1.91622924]
[ 0.58294263 0.32025559 0.6925856 0.0524125 ]
[ 0.58294263 0.32025559 0.6925856 0.05 ]
[ 0.58294263 0.32025559 0.6925856 1.7 ]
[ 0.3239913 0.7786444 0.41692853 0.10467392]
[ 0.12080023 0.74853649 0.15356663 0.4505753 ]
[ 0.13536096 0.60319054 0.82018125 0.10445047]
[ 0.1877724 0.96060999 0.39697999 0.59078612]]
ten powinien powrócić
[[ 0.7732126 0.48649481 0.29771819 1.91622924]
[ 0.58294263 0.32025559 0.6925856 1.7 ]
[ 0.3239913 0.7786444 0.41692853 0.10467392]
[ 0.12080023 0.74853649 0.15356663 0.4505753 ]
[ 0.13536096 0.60319054 0.82018125 0.10445047]
[ 0.1877724 0.96060999 0.39697999 0.59078612]]
będzie wpisy dla tego samego (x, y, z) położeniu zawsze kolejne, jak w przykładowych danych czy będą rozproszone? O ile wpisów będziesz miał w praktyce? – jme
Mogą być niestety rozproszone. Nigdy nie będą więcej niż 4. Wydajność nie jest na to krytyczna. – Luca
FYI: Jest to operacja "grupa po sobie" (patrz http://pandas.pydata.org/pandas-docs/stable/groupby.html). Grupujesz według pierwszych trzech kolumn, a następnie stosujesz maksymalną funkcję do grup. Jest to całkiem łatwe do zrobienia z biblioteką taką jak pandy (http://pandas.pydata.org/). –