NumPy Stel bewerkings


Wat is 'n stel

'n Stel in wiskunde is 'n versameling unieke elemente.

Stelle word gebruik vir bewerkings wat gereelde kruisings-, unie- en verskilbewerkings behels.


Skep stelle in NumPy

Ons kan NumPy se unique()metode gebruik om unieke elemente uit enige skikking te vind. Skep bv. 'n stel skikking, maar onthou dat die stel skikkings slegs 1-D skikkings moet wees.

Voorbeeld

Skakel die volgende skikking met herhaalde elemente om na 'n stel:

import numpy as np

arr = np.array([1, 1, 1, 2, 3, 4, 5, 5, 6, 7])

x = np.unique(arr)

print(x)

Vind Unie

Om die unieke waardes van twee skikkings te vind, gebruik die union1d()metode.

Voorbeeld

Vind vereniging van die volgende twee stel skikkings:

import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([3, 4, 5, 6])

newarr = np.union1d(arr1, arr2)

print(newarr)

Kry kruising

Gebruik die intersect1d()metode om slegs die waardes te vind wat in beide skikkings teenwoordig is.

Voorbeeld

Vind kruising van die volgende twee stel skikkings:

import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([3, 4, 5, 6])

newarr = np.intersect1d(arr1, arr2, assume_unique=True)

print(newarr)

Let wel: die intersect1d()metode neem 'n opsionele argument assume_unique, wat as dit op True gestel is, berekening kan bespoedig. Dit moet altyd op Waar gestel word wanneer jy met stelle handel.


Vind Verskil

Om slegs die waardes in die eerste stel te vind wat NIE in die sekondesstel voorkom nie, gebruik die setdiff1d()metode.

Voorbeeld

Vind die verskil van die stel1 van stel2:

import numpy as np

set1 = np.array([1, 2, 3, 4])
set2 = np.array([3, 4, 5, 6])

newarr = np.setdiff1d(set1, set2, assume_unique=True)

print(newarr)

Let wel: die setdiff1d()metode neem 'n opsionele argument assume_unique, wat as dit op True gestel is, berekening kan bespoedig. Dit moet altyd op Waar gestel word wanneer jy met stelle handel.


Vind simmetriese verskil

Om slegs die waardes te vind wat NIE in BEIDE stelle voorkom nie, gebruik die setxor1d()metode.

Voorbeeld

Vind die simmetriese verskil van die stel1 en stel2:

import numpy as np

set1 = np.array([1, 2, 3, 4])
set2 = np.array([3, 4, 5, 6])

newarr = np.setxor1d(set1, set2, assume_unique=True)

print(newarr)

Let wel: die setxor1d()metode neem 'n opsionele argument assume_unique, wat as dit op True gestel is, berekening kan bespoedig. Dit moet altyd op Waar gestel word wanneer jy met stelle handel.