草庐IT

Grouping

全部标签

ruby-on-rails - 按天对 Mongoid 对象进行分组

在控制台中反复尝试之后,我想到了这种方法,可以按发生日期对类似activerecord的(Mongoid)对象进行分组。我不确定这是完成此任务的最佳方法,但它确实有效。有没有人有更好的建议,或者这是一个很好的方法?#eventsisanarrayofactiverecord-likeobjectsthatincludeatimeattributeevents.map{|event|#converteventsarrayintoanarrayofhasheswiththedayofthemonthandtheevent{:number=>event.time.day,:event=>ev

arrays - 如何在下面的示例中将两个值数组分组为 n 个值数组?

我已经有很多两个值数组,例如下面的例子ary=[[1,2],[2,3],[1,3],[4,5],[5,6],[4,7],[7,8],[4,8]]我想把它们分组到[1,2,3],[4,5],[5,6],[4,7,8]因为意思是1和2有关系,2和3有关系,1和3有关系,所以1,2,3都有关系我如何通过ruby​​库或任何算法来做到这一点? 最佳答案 这是基本Bron–Kerboschalgorithm的Ruby实现:classGraphdefinitialize(edges)@edges=edgesenddeffind_maximum_

ruby - 按相似性对字符串进行分组

我有一个字符串数组,数量不多(可能几百个)但通常很长(几百个字符)。这些字符串通常是无意义的,并且彼此不同。但是在一组这样的字符串中,可能300个中有5个具有很大的相似性。事实上,它们是相同的字符串,不同的是格式、标点符号和一些单词..我怎样才能算出那组字符串?顺便说一句,我正在用ruby​​编写,但如果没有别的,伪代码算法就可以了。谢谢 最佳答案 假设您不担心每个单词的拼写错误或其他错误,您可以执行以下操作:构建一个倒排索引,它基本上是一个以单词为键的散列,指向包含该单词的字符串的指针列表(如何处理重复出现由您决定)。要确定与给定

ruby-on-rails - ruby group_by 对象?

我有一个数组或不同的对象,我想按对象分组。例如=>[#,#,#,#]all.size=>4我试过了all.group_by(Object)但这没有用...关于如何对一个数组中的对象进行分组有什么想法吗? 最佳答案 你想做这样的事情吗?all.group_by(&:class)它将数组中的对象按类名分组编辑评论all.group_by(&:class).eachdo|key,group|group.each{|item|putsitem}endKey是分组元素,obj是键的集合,因此这将遍历分组中的每个组并列出该组中的对象您也可以很容

javascript - 如何将数组数组转换为深层嵌套 TreeView

我正在通过将路径数组转换为TreeView数据结构来构建TreeView。这是我想要做的://routesaresorted.letroutes=[['top','1.jpg'],['top','2.jpg'],['top','unsplash','photo.jpg'],['top','unsplash','photo2.jpg'],['top','foo','2.jpg'],['top','foo','bar','1.jpg'],['top','foo','bar','2.jpg']];intolettreeview={name:'top',child:[{name:'1.jpg'

JavaScript ES6 : Grouping methods in es6 classes?

我们中的一些人正在尝试创建一个JavaScript库以在RESTfulAPI上快速运行JSON查询。我想做的是根据它们的目的对一组方法进行分组。例如;通过API,我能够获取用户属性。我不想将所有这些方法都放在主对象下,而是将它们分组在API类对象中。即转换这个:myAPI.getUserById()为此:myAPI.User.getByID()myAPI.User.getByName()我们将使用下面的代码作为一个简单示例。我如何将我的用户方法嵌套在myAPI类的用户对象中??classmyAPI{constructor(url){this.url=url;//Codetoconnec

javascript - 根据对象日期的年份将对象数组拆分为新数组

我有一个名为objarray的对象数组。每个对象看起来像这样:varobject={age:"45"coords:"-37.807997144.705784"date:SunJul28200200:00:00GMT+1000(EST)}(日期是一个日期对象)我需要根据日期将每个对象推送到一个新数组中。我希望最终结果如下所示:vardateGroups=[[object,object,object],[object,object],[object,object,object]];dateGroups中的每个数组都包含具有相同日期的对象。这可能与数组有关吗?之前我生成了一个新对象,其中包含

JavaScript:按一个键对项目进行分组,按另一个键对(!)组内的项目进行排序 - 怎么样?

在我的结果中,学生应该按Room-Id分组(!),然后在组内按年龄排序。按房间分组/排序的结果:Name|R|Age-------------------Student2|1|22Student4|1|25Student3|3|21Student6|3|27Student1|5|29我的当前代码(JSFiddle:http://jsfiddle.net/n9KNx/):/*addstudents*/varstudents=newArray();students.push({name:"Student1",room_id:5,age:29});students.push({name:"S

javascript - EXT 4.2 ComboBox 使用 XTemplate 对结果进行分组

我正在尝试对从商店获得的结果进行分组,以便在ComboBox中显示。我有一个看起来像这样的组合框:我需要它看起来像这样:这意味着按类别(订单/发票)分组。我的组合框是这样定义的:Ext.define('NG.view.searchcombo.Combo',{requires:['Ext.form.field.ComboBox'],extend:'Ext.form.ComboBox',alias:'widget.searchcombo',minChars:3,fieldLabel:'ChooseSearch',store:'Search',displayField:'name',valu

javascript - Angular UI 可排序 - 分组

我四处寻找一种“优雅”的方式来做到这一点。使用AngularUISortable我目前有3列,基本上看起来像这样codepen,只有3列而不是2列。查看sortOptions:functioncreateOptions(listName){var_listName=listName;varoptions={placeholder:"app",connectWith:".apps-container",activate:function(){console.log("list"+_listName+":activate");},beforeStop:function(){console.