我有一个数组x
,其数据如下:[3.1、3.0、3.3、3.5、3.8、3.75、4.0]等。
我还有另一个变量y
,具有相应的0和1 [0,1,0]
我想从这些新的单独的数组中进行划分
freq, bins = np.histogram(X, 5)
这使我知道每个垃圾箱的临界值。但是我实际上如何获取这些数据?例如,如果我有两个垃圾箱(3到3.5和3.5到4),我想让两个得到两个数组作为回报[3.1,3.2,3.4,...]和[3.6,3.7,4,... ]。另外,我希望变量y
被破坏并以相同的方式排序。
摘要:我正在寻找将x
分解为具有相应y
值的垃圾箱的代码。
我曾考虑过使用bins
变量来做一些事情,但是我不确定如何根据临界值分割数据。感谢您的帮助。
使用代码:
d=plt.hist(X, 5, facecolor='blue', alpha=0.5)
工作代码:
def pairwise(iterable):
"s -> (s0,s1), (s1,s2), (s2, s3), ..."
a, b = tee(iterable)
next(b, None)
return zip(a, b)
def getLists(a, b, bin_obj):
index_list = []
for left, right in pairwise(bin_obj):
indices = np.where((a >= left) & (a < right))
index_list += [indices[0]]
X_ret = [a[i] for i in index_list]
Y_ret = [b[i] for i in index_list]
return (X_ret, Y_ret)
freq, bins = np.histogram(X[:, 0], 5)
Xnew, Ynew = getLists(X[:, 0], Y, bins)
答案 0 :(得分:2)
标准库中有少量的python函数defined。
import { BsDatepickerModule } from 'ngx-bootstrap';
@NgModule({
imports: [
.....
BsDatepickerModule.forRoot(),
.....
],
exports: [
.....
BsDatepickerModule,
.....
]
})
它可以帮助您遍历回收箱并获取元素的索引。
import { BsDatepickerModule } from 'ngx-bootstrap';
@NgModule({
imports: [
.....
BsDatepickerModule.forRoot(),
.....
]