草庐IT

rolling_mean

全部标签

python - 在 sklearn 中使用 silhouette 分数进行高效的 k-means 评估

我正在对约100万个项目(每个表示为一个约100个特征向量)运行k-means聚类。我已经为各种k运行了聚类,现在想用sklearn中实现的轮廓分数来评估不同的结果。尝试在没有采样的情况下运行它似乎不可行并且需要很长时间,所以我假设我需要使用采样,即:metrics.silhouette_score(feature_matrix,cluster_labels,metric='euclidean',sample_size=???)不过,我不太清楚什么是合适的抽样方法。给定矩阵的大小,是否有关于使用多大样本的经验法则?是取我的分析机可以处理的最大样本更好,还是取更多较小样本的平均值更好?我

python - 如何使用天数作为 pandas rolling_apply 函数的窗口

我有一个日期间隔不规则的Pandas数据框。有没有办法用7天作为移动窗口来计算medianabsolutedeviation,中位数等..?我觉得我可以以某种方式使用pandas.rolling_apply但它不会为window参数采用不规则间隔的日期。我找到了类似的帖子https://stackoverflow.com/a/30244019/3128336并且我正在尝试创建我的自定义函数,但仍然无法弄清楚..任何人都可以帮忙吗?importpandasaspdfromdatetimeimportdatetimeperson=['A','B','C','B','A','C','A','

使用 rolling_apply 的 Python 自定义函数用于 pandas

我想使用pandas.rolling_apply函数在滚动窗口的基础上应用我自己的自定义函数。但是我的函数需要两个参数,并且还有两个输出。这可能吗?下面是一个最小的可重现示例...importpandasaspdimportnumpyasnpimportrandomtmp=pd.DataFrame(np.random.randn(2000,2)/10000,index=pd.date_range('2001-01-01',periods=2000),columns=['A','B'])defgm(df,p):v=(((df+1).cumprod())-1)*preturnv.iloc[

python - 为什么 "numpy.mean"返回 'inf' ?

我需要计算超过1000行的数组的列的平均值。np.mean(some_array)给我inf作为输出但我很确定这些值没问题。我正在从here加载一个csv在我的Data变量中,“cement”列在我看来是“健康的”。In[254]:np.mean(Data[:230]['Cement'])Out[254]:275.75但是如果我增加行数问题开始:In[259]:np.mean(Data[:237]['Cement'])Out[259]:inf但是当我查看数据时In[261]:Data[230:237]['Cement']Out[261]:array([[425.],[333.],[25

Python:如何将 .mean 的特定列添加到数据框

如何将b和c的方法添加到我的数据框中?我尝试了合并,但它似乎没有用。所以我想用df.groupBy('date').mean()的结果将两个额外的列b_mean和c_mean添加到我的数据框中数据框abcdate023511591123711我有以下代码importpandasaspda=[{'date':1,'a':2,'b':3,'c':5},{'date':1,'a':5,'b':9,'c':1},{'date':1,'a':3,'b':7,'c':1}]df=pd.DataFrame(a)x=df.groupby('date').mean()编辑:期望的输出如下df.group

python - Pandas 数据框条件 .mean() 取决于特定列中的值

我正在尝试创建一个新列,它返回同一df中现有列的值的平均值。但是,应根据其他三个列中的分组来计算平均值。Out[184]:YEARdaytypehourtypescenariooption_value02015SATof_h00.13449912015SUNof_h163.01925022015WDof_h252.11351632015WDpk_h343.12651342015SATof_h456.431392当“YEAR”、“daytype”和“hourtype”相似时,我基本上想要一个新列“mean”来计算“optionvalue”的平均值。我尝试了以下方法但没有成功......I

python - Python 中的球形 k-means 实现

我一直在使用scipy'sk-means现在已经有一段时间了,我对它在可用性和效率方面的工作方式感到非常满意。但是,现在我想探索不同的k-means变体,更具体地说,我想申请sphericalk-means在我的一些问题中。您知道球形k均值的任何良好Python实现(即类似于scipy的k均值)吗?如果不是,修改scipy的源代码以使其k-means算法适应球形有多难?谢谢。 最佳答案 在球形k-means中,您的目标是保证中心位于球体上,因此您可以调整算法以使用余弦距离,并且还应该对最终结果的质心进行归一化。当使用欧几里得距离时,

python - sklearn.metrics.mean_squared_error 是不是越大越好(取反)?

一般来说,mean_squared_error越小越好。当我使用sklearn指标包时,它在文档页面中显示:http://scikit-learn.org/stable/modules/model_evaluation.htmlAllscorerobjectsfollowtheconventionthathigherreturnvaluesarebetterthanlowerreturnvalues.Thusmetricswhichmeasurethedistancebetweenthemodelandthedata,likemetrics.mean_squared_error,are

python - 从 pandas.rolling_apply 返回两个值

我正在使用pandas.rolling_apply将数据拟合到分布并从中获取值,但我还需要它报告滚动拟合优度(特别是p值)。目前我是这样做的:deffunc(sample):fit=genextreme.fit(sample)returngenextreme.isf(0.9,*fit)defp_value(sample):fit=genextreme.fit(sample)returnkstest(sample,'genextreme',fit)[1]values=pd.rolling_apply(data,30,func)p_values=pd.rolling_apply(data,

[YOLOv7/YOLOv5系列算法改进NO.9]锚框K-Means算法改进K-Means++

前  言:作为当前先进的深度学习目标检测算法YOLOv5,已经集合了大量的trick,但是还是有提高和改进的空间,针对具体应用场景下的检测难点,可以不同的改进方法。此后的系列文章,将重点对YOLOv5的如何改进进行详细的介绍,目的是为了给那些搞科研的同学需要创新点或者搞工程项目的朋友需要达到更好的效果提供自己的微薄帮助和参考。解决问题:YOLOv5默认采用K-Means算法聚类COCO数据集生成的锚框,并采用遗传算法在训练过程中调整锚框,但是K-Means在聚类时,从其算法的原理可知,K-Means正式聚类之前首先需要完成的就是初始化k个簇中心。同时,也正是因为这个原因,使得K-Means聚类