python中的方括号函数

2024-05-13 23:55:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我在学Python。我不明白 岩芯样品掩模[db.core\样本\索引_]=正确 这个代码。core\u sample\u 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

Tags: sample代码coretruedblabels样品mask
1条回答
网友
1楼 · 发布于 2024-05-13 23:55:39

这只是索引赋值。注意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]

相关问题 更多 >