Функция квадратной скобки в питоне - PullRequest
0 голосов
/ 20 марта 2019

Я изучаю Python. и я не понимаю core_samples_mask [db.core_sample_indices_] = True Этот код. core_sample_mask - это массив чисел от 0 до 1499, и я не понимаю, что означает squrebracket в этом коде, и почему = True следует.

 #data prep, dbscn clustering
 X, y = createDataPoints([[4,3], [2,-1], [-1,4]] , 1500, 0.5)
 epsilon = 0.3
 minimumSamples = 7
 db = DBSCAN(eps=epsilon, min_samples=minimumSamples).fit(X)
 labels = db.labels_
 labels

 #create an array of booleans using the labels from db (I dont       understand what this means..)
 core_samples_mask = np.zeros_like(db.labels_, dtype=bool)
 core_samples_mask[db.core_sample_indices_] = True
 core_samples_mask

1 Ответ

0 голосов
/ 20 марта 2019

Это просто индексированное задание.Обратите внимание, какие элементы arr изменяются:

In [374]: mask = np.zeros(6, dtype=bool)                                                  
In [375]: mask                                                                            
Out[375]: array([False, False, False, False, False, False])
In [376]: mask[[1,3,4]] = True                                                            
In [377]: mask                                                                            
Out[377]: array([False,  True, False,  True,  True, False])

То же действие, но с целочисленным массивом dtype:

In [378]: arr = np.zeros(6, dtype=int)                                                    
In [379]: arr                                                                             
Out[379]: array([0, 0, 0, 0, 0, 0])
In [380]: arr[[1,3,4]] = 1                                                                
In [381]: arr                                                                             
Out[381]: array([0, 1, 0, 1, 1, 0])

Аналогичное назначение списка:

In [382]: alist = [1,2,3,4]                                                               
In [383]: alist[2] = 200                                                                  
In [384]: alist                                                                           
Out[384]: [1, 2, 200, 4]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...