عناصر منحصر به فرد را در امتداد محور یک تانسور پیدا می کند.
این عملیات یا یک تانسور «y» حاوی عناصر منحصربهفرد در امتداد «محور» یک تانسور برمیگرداند. عناصر منحصر به فرد برگشتی به همان ترتیبی که در امتداد «محور» در «x» قرار دارند مرتب میشوند. این عملیات همچنین یک تانسور «idx» را برمیگرداند که به اندازه تعداد عناصر «x» در امتداد بعد «محور» است. این شامل شاخص در خروجی منحصر به فرد «y» است. به عبارت دیگر، برای یک تانسور «1-D» «x» با محور = هیچ:
`y[idx[i]] = x[i] برای i در [0، 1،...، رتبه(x) - 1]`
به عنوان مثال:
# tensor 'x' is [1, 1, 2, 4, 4, 4, 7, 8, 8]
y, idx = unique(x)
y ==> [1, 2, 4, 7, 8]
idx ==> [0, 0, 1, 2, 2, 2, 3, 4, 4]
# tensor 'x' is [[1, 0, 0],
# [1, 0, 0],
# [2, 0, 0]]
y, idx = unique(x, axis=0)
y ==> [[1, 0, 0],
[2, 0, 0]]
idx ==> [0, 0, 1]
# tensor 'x' is [[1, 0, 0],
# [1, 0, 0],
# [2, 0, 0]]
y, idx = unique(x, axis=1)
y ==> [[1, 0],
[1, 0],
[2, 0]]
idx ==> [0, 1, 1]
روش های عمومی
استاتیک <T، V تعداد را گسترش می دهد، U تعداد را گسترش می دهد> منحصر به فرد <T، V> | |
ایستا <T، U تعداد را گسترش می دهد> منحصر به فرد <T، عدد صحیح> | |
خروجی <V> | idx () یک تانسور 1 بعدی |
خروجی <T> | y () یک "تنسور". |
روش های ارثی
روش های عمومی
عمومی استاتیک منحصر به فرد <T، V> ایجاد (حوزه دامنه ، عملوند <T> x، محور عملوند <U>، کلاس<V> outIdx)
روش Factory برای ایجاد کلاسی که یک عملیات Unique جدید را بسته بندی می کند.
پارامترها
دامنه | محدوده فعلی |
---|---|
x | یک "تنسور". |
محور | یک «تنسور» از نوع «int32» (پیشفرض: هیچکدام). محور تانسور برای یافتن عناصر منحصر به فرد. |
برمی گرداند
- یک نمونه جدید از Unique
عمومی ایستا منحصر به فرد <T، عدد صحیح> ایجاد (حوزه دامنه ، عملوند <T> x، عملوند <U> محور)
روش کارخانه برای ایجاد یک کلاس که یک عملیات منحصر به فرد جدید را با استفاده از انواع خروجی پیش فرض بسته بندی می کند.
پارامترها
دامنه | محدوده فعلی |
---|---|
x | یک "تنسور". |
محور | یک «تنسور» از نوع «int32» (پیشفرض: هیچکدام). محور تانسور برای یافتن عناصر منحصر به فرد. |
برمی گرداند
- یک نمونه جدید از Unique
خروجی عمومی <V> idx ()
یک تانسور 1 بعدی دارای همان نوع x است که شامل شاخص هر مقدار x در خروجی y است.