我正在构建一个推荐系统,它可以对汽车替代品进行基于多标准的排名。我只需要以有意义的方式对替代方案进行排名。我有办法通过表格询问用户问题。
每辆车将根据以下标准进行评判:价格、尺寸、电动/非电动、距离等。正如您所看到的,它混合了各种数据类型,包括序数、基数(计数)和定量数据。
我的问题如下:
我应该使用哪种技术将所有模型合并到一个可以排名的分数中。我查看了标准化加权和模型,但我很难将权重分配给序数(排名)数据。我尝试使用更智能的方法为序数数据分配数值权重,但我不确定它是否合适。请帮忙!
在有人帮助我找到最佳排名方法的答案之后,如果最佳排名替代方案在绝对范围内不够好怎么办?我如何检查以进一步扩大替代集?
3.由于上面提到的标准(价格等)都在不同的单位上,是否有一个好的方法来标准化属于不同尺度的混合数据类型?鉴于数据属于许多不同的类型,这样做是否有意义?
对这些问题的任何帮助将不胜感激!谢谢你!
我的 C# 项目中必须具有相同索引的元素之间存在关系的数组:
简化示例如下:
Array_1 [0] =902;
Array_1 [1] =109;
Array_1 [2] =205;
Array_1 [3] =187;
Array_1 [4] =440;
Array_1 [5] =508;
Array_2 [0] ="Ford";
Array_2 [1] ="Opel";
Array_2 [2] ="Kia";
Array_2 [3] ="Renault";
Array_2 [4] ="BMW";
Array_2 [5] ="Toyota";
Run Code Online (Sandbox Code Playgroud)
我必须根据Array_1的值排名(从低到高)对Array-2进行排序。结果将写入Array_2_sorted。这意味着: Array_1 的最低值是 Array_1[1] (109) --> 所以 Array_2[1] (Opel) 应该是 Array_2_sorted[0]
下一个更高的值是 Array_1[3] (187) --> 所以 Array_2[3] (Renault) 应该是 Array_2_sorted[1]
下一个更高的值是 Array_1[2] (205) --> 所以 Array_2[2] (Kia) 应该是 Array_2_sorted[2]
下一个更高的值是 Array_1[4] (440) --> 所以 Array_2[4] (BMW) 应该是 Array_2_sorted[3]
...
如何在 …
我有一个student_table表,其中包含两列student_name(带有uniqe约束),student_marks.从这张表中,我需要获得拥有第三高分的学生的记录.
我试过这个,但这是不正确的:
select * from student_table orderby(marks) enum(marks)=3;
Run Code Online (Sandbox Code Playgroud)
如何更正此查询?
我有问题..在我的情况下,我做冠军..你知道,胜利者是由最高价值决定的..示例:
$sql = "SELECT bla bla bla FROM `user` ORDER BY `point` DESC";
$result = mysql_query($sql);
$i=0;
while($row = mysql_fetch_array($result)) {
$1++;
echo "rank ".$i." is ".$row['name']." with point ".$row['point'].";
}
Run Code Online (Sandbox Code Playgroud)
它会显示出来
这个问题..
我对R很陌生,所以对于很多有经验的程序员来说这似乎是微不足道的,对不起提前!
我有一个长度为8的数字向量,如下所示:
data <- c(45, 67, 23, 24, 5, 23, 45, 23)
当我输入:时rank(data),R返回:[1] 6.5 8.0 3.0 5.0 1.0 3.0 6.5 3.0
然而,根据我(非常基本的)对等级的理解,我希望R只返回给我整数......例如:
[1] 6 8 2 5 1 3 7 4
怎么能rank()告诉我第一个元素data有浮点排名而不是整数排名?是因为有data重复的价值观,所以rank()试图以一种我没想到的方式处理关系?如果是这样,请告诉我如何解决这个问题,以便我可以获得看起来像我之前预期的输出.此外,rank()非常感谢有关如何处理NA值的任何信息.可以使用的基本描述rank()以及可以使用的铃声和口哨将是太棒了!我在youtube上寻找视频,搜索stackoverflow无济于事!非常感谢.
我有一个包含以下内容的熊猫数据框:
Athlete A Athlete B Athlete C
speed=10 speed=12 speed=6
endurance=60 endurance=59 endurance=64
Run Code Online (Sandbox Code Playgroud)
我想根据他们的速度和耐力对这三位运动员的力量进行排名。我想给耐力稍微大一点的权重(0.6)。是否有任何python库可以根据多个条件进行排名?
R中的sort(),rank()和order()之间有什么区别?你能举例说明吗?
我必须对此数据集中的几个变量排序的数据集进行排名,并按其中的另一个变量分组。当我在 data.table 上使用排名方法时,排名值是小数。我需要它们是没有小数部分的整数。
波纹管,我正在提供我需要的摘要。我正在从本网站的另一个问题中复制其他人的示例(也与排名方法有关)。我发现这个问题的答案很有用,但它仍然没有提供使排名结果成为没有小数的整数的方法。这就是为什么我在这里复制它并将其作为这个问题的起点(因为不允许在一个答案下提出不同的问题)。
我需要根据几个变量进行排名,按一个(或几个变量)分组,然后得到一个没有小数的整数排名。
这是其他人的例子:
他创建了数据表:
library(data.table)
t1 <- data.table (id = c('11', '11', '11', '22','22',
'88', '99','44','44', '55'),
date = as.Date(c("01-01-2016",
"01-02-2016",
"01-02-2016",
"02-01-2016",
"02-02-2016"),
format = "%m-%d-%Y"))
setkey(dt1, date)
setkey(dt1, id)
dt1
id date
1: 11 2016-01-01
2: 11 2016-01-02
3: 11 2016-01-02
4: 22 2016-02-01
5: 22 2016-02-02
6: 44 2016-01-02
7: 44 2016-02-01
8: 55 2016-02-02
9: 88 2016-01-01
10: 99 2016-01-02
Run Code Online (Sandbox Code Playgroud)
在这里,他根据变量进行排名date并按以下分组id:
dt1[, rank := frank(date), by = list(id)]
dt1 …Run Code Online (Sandbox Code Playgroud) 我正在尝试优化查询以从DB获取特定国家/地区的用户的排名.目前看来效率很低.
我正在努力确定可以采取哪些措施来改进它.
这是当前的SQL:
SELECT COUNT(*) + 1
FROM leaderboard lb, users u
WHERE u.country = 'United States'
AND lb.id = u.id
AND lb.score + 1 > (SELECT lb2.score
FROM leaderboard lb2
WHERE lb2.id = some_user_id);
Run Code Online (Sandbox Code Playgroud)
细节:
Users 表:
id 是主键country 列已编入索引Leadeboard 表:
id 是主键score 列已编入索引执行计划显示2个警告:
没有统计数据的列:[dbo].[排行榜] .id(成本23%)
没有统计数据的列:[dbo].[用户] .id(成本28%)
我希望输出显示每个X变量的名称,它与另一个系列的签名相关性,以及它的绝对相关性,按降序绝对相关性排序.
使用以下代码,我能够计算序列(对象res1)和X变量(位于data2数据帧内)之间的相关性.
cor(data2, res1, method = c("pearson"))
Run Code Online (Sandbox Code Playgroud)
上面的代码生成了下面的输出,它在控制台中垂直显示.
[,1]
x1 0.45683210
x2 0.62858863
x3 0.08457911
x4 0.41022052
Run Code Online (Sandbox Code Playgroud)
接下来,使用以下代码,我可以使用sort()函数按绝对值对这些相关性进行排名.
abs(cor(data2, res1, method = c("pearson")))
abs1<-abs(cor(data2, res1, method = c("pearson")))
sort(abs1, decreasing = TRUE)
Run Code Online (Sandbox Code Playgroud)
而且,我得到了以下输出.
[1] 0.62858863 0.45683210 0.41022052 0.08457911
Run Code Online (Sandbox Code Playgroud)
我想生成一个看起来像表或数据帧的输出.
在第一列中,您将拥有X变量的标签.
在第二列中,您将具有绝对相关性.
在第三列中,您将获得实际的相关性.
并且,此垂直表格列表将按降序排列.我想我有我需要的所有信息.我只需要代码来生成指定的输出.
ranking ×10
r ×4
sorting ×3
python ×2
sql ×2
algorithm ×1
arrays ×1
c# ×1
correlation ×1
data.table ×1
dataframe ×1
difference ×1
double ×1
mcdm ×1
mysql ×1
pandas ×1
php ×1
rank ×1
sql-server ×1
statistics ×1
t-sql ×1