问题标签 [weighted]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 一个或多个数组的加权洗牌?
什么是使用嵌套数组中的权重对一个或多个数组进行洗牌的好算法?
例子:
我希望数组随机洗牌,但我希望该rank
值是一个权重。因此,排名较低的人更有可能位居榜首。
我已经尝试了一些东西,比如遍历数组并拉出选择使用的数组,mt_rand(mt_rand(0,$value),$value)
但我认为我没有走在正确的轨道上......
matlab - 从 MATLAB 中的一个非常大的数组中按索引选择 n 个加权元素
假设我有一个非常大的方阵 M(i, j),这样矩阵中的每个元素都表示在加权随机选择中选择该元素的概率。我需要从矩阵中采样 n 个元素(通过 (i, j) 索引)并进行替换。权重将在主循环的每次迭代中发生变化。
目前,我正在使用以下内容:
但这似乎是一个相当笨重的方法,由于 for 循环,这也需要很长时间。有没有更有效的方法?也许如果我以某种方式对矩阵进行矢量化?
*编辑我应该提到我无权访问统计工具箱
提前谢谢了。
r - 加权皮尔逊相关系数?
我有一个2396x34 double matrix
命名y
,其中每一行(2396)代表一个由 34 个连续时间段组成的单独情况。
我还有一个代表 34 个连续时间段的单一情况的numeric[34]
名称。x
目前我正在计算每一行之间的相关性y
,x
如下所示:
crs[,2] <- cor(t(y),x)
我现在需要的是用加权相关替换cor
上述语句中的函数。权重向量有 34 个元素长,因此可以为 34 个连续时间段中的每一个分配不同的权重。xy.wt
我找到了这个Weighted Covariance Matrix
函数cov.wt
,并认为如果我首先scale
获取数据,它应该像cor
函数一样工作。事实上,您也可以指定函数返回一个相关矩阵。不幸的是,我似乎不能以相同的方式使用它,因为我无法分别提供我的两个变量 (x
和y
)。
有谁知道我可以在不牺牲太多速度的情况下以我描述的方式获得加权相关性的方法?
编辑:也许可以y
在函数之前应用一些数学函数cor
,以获得我正在寻找的相同结果。也许如果我将每个元素乘以xy.wt/sum(xy.wt)
?
编辑#2corr
我在boot
包中发现了另一个函数。
这也不是我需要的,但它更接近。
编辑#3 这是一些生成我正在使用的数据类型的代码:
algorithm - 使用接受任意数量参数的 get/set 函数创建树
我正在尝试创建两个函数:get & set,它们都接受任意 # 个参数(比如说 4)。set 函数接受一个数组并将其设置在 memcached 中,get 函数从 memcached 中获取一个数组并返回它。
假设 $a 有 5 种可能性,$b 有 10 种可能性,$c 有 100 种可能性,$d 有 1000 种可能性。
扭曲:只有 $a 是有保证的,但应该总是有一个响应 get (基于传递给它的任何数据)。它还应该能够处理给定 $a、$b 和 $c 的情况,如果没有任何设置与所有这三个参数匹配,它会“向上”(在树的意义上)并找到最接近的根据参数的优先级进行匹配)。
现在我正在考虑构建某种形式的加权树,对参数进行优先级排序并分配权重(例如,$a 具有优先级 100,$b 具有优先级 10,$c 具有优先级 90,$d 具有优先级 50).. .
代码与语言无关,更多地寻找有关如何处理此问题的想法(最有效/最有效)。提前致谢!
php - 简单的加权链接旋转?
我目前正在通过将活动中的登录页面发送到以下脚本来拆分测试登录页面:
如果我想在 75% 的时间里显示第一张 LP,我该怎么做呢?将第一个链接再复制两次是否可行,或者有更好的方法吗?
r - 计算加权平均值和标准差
我有一个时间序列x_0 ... x_t
。我想计算数据的指数加权方差。那是:
参考:http ://en.wikipedia.org/wiki/Weighted_mean#Weighted_sample_variance
目标是基本上对时间较早的观察结果进行加权。这很容易实现,但我想尽可能多地使用内置功能。有谁知道这在 R 中对应什么?
谢谢
c# - 如何对一组对象进行排序,必须根据一些不断变化的参数进行排序
我正在研究如何使用加权值有效地对列表进行排序。
每个项目都有一个 ID、名称和文件路径。每个项目还有一个值列表,这些值分配了一个百分比,显示它们与每个值的相关程度。
我需要对列表进行排序,以便列表顶端的项目是与当前参数最相关的项目。
可以说,
项目一:
- A:50,B:30,C:20,D:10
- X:50,Z:20
项目二:
- A:100, B:0, C:0, D:0
- X:0, Z:100
我的参数是 A 和 Z。显然,项目二应该在我的列表顶部,因为它是最相关的项目。但是我将如何实施呢?
奖励:能够进行轻微的随机化也很好,我不想每次都得到最终的相关项目。
谢谢
ruby - 用户间非二分非加权最大匹配
情况:用户选择多个其他用户作为项目的可能合作伙伴。用户对他选择的一个用户没有偏好(即,他列表中的任何用户都足以成为合作伙伴)。例子:
真正的清单会大得多。
我的问题:给定一组用户及其首选合作伙伴(如上面的列表),我想生成一组最终合作对。最终合作对的数量必须最大化(我希望尽可能多的人成对)。
这是我认为我需要的算法:Edmonds's matching algorithm,但由于我不是数学背景,我在解释和实现它时遇到了麻烦。
任何帮助,将不胜感激。提前致谢。
r - R中的“加权”回归
我创建了一个类似下面的脚本来执行我称之为“加权”回归的事情:
您可以看到在 中temp.df
,每一行都有其权重,我的意思是总共有 1178 个样本,但对于具有相同bp
和的行age
,它们合并为 1 行并在weight
列中表示。
我使用了weight
函数中的参数lm
,然后将结果与另一个数据框进行了交叉检查,该temp.df
数据框已“扩展”。但我发现lm
2 个数据帧的输出不同。
我是否误解了函数中的weight
参数lm
,任何人都可以让我知道如何正确地运行回归(即不手动扩展数据框)对于像这样呈现的数据集temp.df
?谢谢。
c - 求所有 m 子序列的最大加权和
我试图解决以下问题:
我之前做过的最接近的问题是 Kadane 的算法,所以我尝试了“此处最大结尾”的方法,这导致了以下基于 DP 的程序。这个想法是将问题分解为更小的相同问题(通常的 DP)。
但是这个程序在指定的时间限制内不起作用(空间限制很好)。请给我一个关于在这个问题上使用的算法的提示。
编辑。
这是代码的解释:就像在 Kadane 中一样,我的想法是查看特定的 C[i],然后对以 C[i] 结尾的 m 子序列取最大加权和,最后取所有的最大值对所有 i 的这些值。这将为我们提供答案。现在请注意,当您查看以 C[i] 结尾的 m 子序列并取最大加权和时,这相当于取 C[0] 中包含的 (m-1)-子序列的最大加权和到 C[i-1]。这是一个较小的问题,与我们原来的问题相同。所以我们使用递归。为了避免重复调用函数,我们制作了一个值表 f[i][j],其中 f[ii][j] 是问题的答案,与我们的问题相同,将 n 替换为 i,将 m 替换为j. 也就是我们建立一个f[i][j]的表,我们最终的答案是f[n-1][m](也就是我们使用memoization)。现在注意到计算条目 f[i][j] 只需要前一列,只保留数组就足够了。这些数组是“a”和“b”。
抱歉,篇幅太长,忍不住了。:(