Синтакса:
нумпи.где (услов, [к, и])при чему функција () може узети два аргумента. Први аргумент је обавезан, а други аргумент није обавезан. Ако вредност првог аргумента (стање) је тачно, тада ће излаз садржати елементе низа из низа, Икс иначе из низа, г. Ова функција ће вратити вриједности индекса улазног низа ако се не користи опционални аргумент.
Употреба функције вхере ():
Различити типови логичких оператора могу се користити за дефинисање услова ове функције. У овом делу упутства приказане су употребе функције вхере () са више услова.
Пример -1: Употреба више услова са логичким ИЛИ
Следећи пример приказује употребу функције вхере () са и без опционалног аргумента. Овде је логички ОР користио за дефинисање услова. Прва функција вхере () примењена је у једнодимензионалном низу који ће вратити низ индекса улазног низа где ће се вратити услов Истинито. Друга функција вхере () која се применила у два једнодимензионална низа дохватаће вредности из првог низа када ће услов вратити Труе. У супротном, вратит ће вриједности из другог низа.
# Увези НумПи библиотекуувоз нумпи као нп
# Креирајте низ помоћу листе
нп_арраи1 = нп.низ ([23, 11, 45, 43, 60, 18, 33, 71, 52, 38])
принт ("Вредности улазног низа: \ н", нп_арраи1)
# Направите још један низ на основу више услова и једног низа
нев_арраи1 = нп.где ((нп_арраи1 50))
# Одштампајте нови низ
принт ("Филтриране вредности низа: \ н", нев_арраи1)
# Креирајте низ користећи вредности опсега
нп_арраи2 = нп.аранге (40, 50)
# Креирајте још један низ на основу више услова и два низа
нев_арраи2 = нп.где ((нп_арраи1 60), нп_арраи1, нп_арраи2)
# Одштампајте нови низ
принт ("Филтриране вредности низа: \ н", нев_арраи2)
Излаз:
Следећи излаз ће се појавити након извршавања горње скрипте. Овде се стање вратило Истинито за вредности 23,11,18,33 и 38 првог низа. Стање се вратило Нетачно за вредности 45, 43, 60, 71 и 52. Дакле, 42, 43, 44 и 48 су додати из другог низа за вредности 45, 43, 60 и 52. Овде је 71 ван домета.
Пример -2: Коришћење више услова са логичким И
Следећи пример показује како се функција () може користити са више услова дефинисаних логичким и применити у два једнодимензионална низа. Овде су креирана два једнодимензионална низа НумПи помоћу функције ранд (). Ови низови су коришћени у функцији вхере () са више услова за стварање новог низа на основу услова. Стање ће се вратити Истинито када је вредност првог низа мања од 40, а вредност другог низа већа од 60. Нови низ је одштампан касније.
# Увези НумПи библиотекуувоз нумпи као нп
# Креирајте два низа случајних вредности
нп_арраи1 = нп.случајни.ранд (10) * 100
нп_арраи2 = нп.случајни.ранд (10) * 100
# Одштампајте вредности низа
принт ("\ нВредности првог низа: \ н", нп_арраи1)
принт ("\ нВредности другог низа: \ н", нп_арраи2)
# Направите нови низ на основу услова
нови_ низ = нп.где ((нп_арраи1 60), нп_арраи1, нп_арраи2)
# Одштампајте нови низ
принт ("\ нФилтриране вредности оба поља: \ н", нови_ низ)
Излаз:
Следећи излаз ће се појавити након извршавања горње скрипте. Стање се вратило Нетачно за све елементе. Дакле, враћени низ садржи вредности само из другог низа.
Пример-3: Коришћење више услова у вишедимензионалном низу
Следећи пример показује како се функција () може користити са више услова дефинисаних логичким И који ће се применити у два вишедимензионална низа. Овде су два вишедимензионална низа креирана помоћу листа. Даље, ове функције су примењене у функцији вхере () за стварање новог низа на основу услова. Вратиће се стање коришћено у функцији Истинито где је вредност првог низа парна, а вредност другог низа је непарна; у супротном, стање ће се вратити Нетачно.
# Увези НумПи библиотекуувоз нумпи као нп
# Креирајте два вишедимензионална низа целобројних вредности
нп_арраи1 = нп.низ ([[5, 12, 21, 6, 11], [6, 10, 15, 31, 8]])
нп_арраи2 = нп.низ ([[43, 19, 7, 34, 9], [99, 22, 41, 5, 12]])
# Одштампајте вредности низа
принт ("\ нВредности првог низа: \ н", нп_арраи1)
принт ("\ нВредности другог низа: \ н", нп_арраи2)
# Направите нови низ од два низа на основу услова
нови_ низ = нп.где (((нп_арраи1% 2 == 0) & (нп_арраи2% 2 == 1)), нп_арраи1, нп_арраи2)
# Одштампајте нови низ
принт ("\ нФилтриране вредности оба поља: \ н", нови_ низ)
Излаз:
Следећи излаз ће се појавити након извршавања горње скрипте. У излазу су 43, 12, 7, 34, 9, 22, 41, 5 и 12 додали нови низ из другог низа јер је услов Нетачно за ове вредности. Првих 12 вредности у новом низу је додато из првог низа јер је услов Истинито само за ову вредност.
Закључак:
при чему је функција () функције библиотеке НумПи корисна за филтрирање вредности из два низа. Стварање новог низа филтрирањем података из два низа на основу више услова дефинисаних логичким ИЛИ и логичким И објашњено је у овом упутству. Надам се да ће читаоци моћи правилно да користе ову функцију у својој скрипти након увежбања примера овог водича.