假设我有简单的JavaScript数组,如下所示:
var array = ['Car', 'Car', 'Truck', 'Boat', 'Truck'];
Run Code Online (Sandbox Code Playgroud)
我想分组和计数每个,所以我期望一个键/值映射:
{
Car : 2,
Truck : 2,
Boat : 1
}
Run Code Online (Sandbox Code Playgroud) 我有一个多维数组,我试图根据特定列中的值对它们进行分组.
我正试图将它们分组level,但我事先并不会真正知道这个级别.所以,这并不是说我可以把它放在一个for循环中然后说while $i < 7,因为我不知道这7是关键字的最大值,坦率地说,即使我,我也不确定我是怎么做的没有...
Array (
[0] => Array (
[cust] => XT8900
[type] => standard
[level] => 1
)
[1] => Array (
[cust] => XT8944
[type] => standard
[level] => 1
)
[2] => Array (
[cust] => XT8922
[type] => premier
[level] => 3
)
[3] => Array (
[cust] => XT8816
[type] => permier
[level] => 3
)
[4] => Array (
[cust] => XT7434
[type] => …Run Code Online (Sandbox Code Playgroud) 我使用cut和classIntervals对R中的数据进行分组,稍后我将使用ggplot2进行绘图.因此,使用n = 3的分位数切割的基本操作将如下所示:
library(classInt)
a<-c(1,10,100,1000,100000,1000000)
b<-cut(a,
breaks=data.frame(
classIntervals(
a,n=3,method="quantile")[2])[,1],
include.lowest=T)
Run Code Online (Sandbox Code Playgroud)
在哪里b:
[1] [1,70] [1,70] (70,3.4e+04] (70,3.4e+04] (3.4e+04,1e+06] (3.4e+04,1e+06]
Levels: [1,70] (70,3.4e+04] (3.4e+04,1e+06]
Run Code Online (Sandbox Code Playgroud)
所以这个输出的第一行是一个带有我的分组数据的向量,我可以在ggplot2中使用它.但是,我希望标签不是用科学记数法来表示这个载体[1,70] (70,34000] (3400,1000000]
我怎么能得到这个?如果你有其他方法而不是cut和classInt来获得相同的结果,那么任何帮助都会受到赞赏.
什么是有效抓取父表的所有行的"轨道方式"以及每行的子节点数?
我不想使用,counter_cache因为我想根据一些时间条件运行这些计数.
陈词滥调的博客示例:文章表.每篇文章都有0条或更多条评论.
我希望能够提取每篇文章在过去一小时,一天,一周中有多少评论.
但是,理想情况下,我不想迭代列表并为每篇文章单独调用sql,也不想使用它:include来预取所有数据并在应用服务器上处理它.
我想运行一个SQL语句并获得一个包含所有信息的结果集.
我知道我可以硬编码了完整的SQL,也许可以使用.find,只是设置:joins,:group和:conditions参数......但我想知道如果有一个"更好"的方式......又名"轨道办法"
提前致谢
可能重复:
如何在Python中将列表拆分为大小均匀的块?
我想从列表l中获取大小为n的元素组:
即:
[1,2,3,4,5,6,7,8,9] -> [[1,2,3], [4,5,6],[7,8,9]] where n is 3
Run Code Online (Sandbox Code Playgroud) 我有一个List<Valuta>可以表示(简化)JSON风格:
[{codice = EUR,description = Euro,ratio = 1},{codice = USD,description = Dollars,ratio = 1.1}]
我想用这样的方式改变它Map<String, Valuta>:
{EUR = {codice = EUR,description = Euro,ratio = 1},USD = {codice = USD,description = Dollars,ratio = 1.1}}
我写了这个单行:
getValute().stream().collect(Collectors.groupingBy(Valuta::getCodice));
Run Code Online (Sandbox Code Playgroud)
但这会返回一个Map<String, List<Valuta>>而不是我需要的东西.
我认为mapping()功能对我有用,但不知道如何.
我最近了解了GROUPING SETS,CUBE和ROLLUP,用于在sql server中定义多个分组集.
我问的是在什么情况下我们使用这些功能?使用它们有什么好处和好处?
SELECT shipperid, YEAR(shippeddate) AS shipyear, COUNT(*) AS numorders
FROM Sales.Orders
GROUP BY GROUPING SETS ( ( shipperid, YEAR(shippeddate) ), ( shipperid ), ( YEAR(shippeddate) ), ( ) );
SELECT shipperid, YEAR(shippeddate) AS shipyear, COUNT(*) AS numorders
FROM Sales.Orders
GROUP BY CUBE( shipperid, YEAR(shippeddate) );
SELECT shipcountry, shipregion, shipcity, COUNT(*) AS numorders
FROM Sales.Orders
GROUP BY ROLLUP( shipcountry, shipregion, shipcity );
Run Code Online (Sandbox Code Playgroud) 我有一个图表,我想要graphviz布局和可视化我.该图有122个边和123个节点.边缘有4种不同的类型,我希望它们在视觉上可以区分.但是我还没有决定最好的方法是什么,我想稍微调整一下表盘.不幸的是,我没有看到像边缘的"类"或"样式表"属性.我只能为每个边缘(大量重复)单独设置视觉属性.也许我错过了什么?毕竟可能有一些方法可以将边添加到4个不同的组然后设置组的样式,而不是单独的每个边?
我正在使用CodePlex的WPF DataGrid,我需要让Virtualization与分组一起使用.
这个问题是关于主题并指向MSDN示例,但它仅涵盖带有简单(即单个"列")DataTemplates的ListControls.
分组和虚拟化似乎是网格的一个非常常见的用例.是否有标准/推荐/简单的方法来实现这一目标?
我使用Java 8进行数据分组.但获得的结果不是按顺序形成的.
Map<GroupingKey, List<Object>> groupedResult = null;
if (!CollectionUtils.isEmpty(groupByColumns)) {
Map<String, Object> mapArr[] = new LinkedHashMap[mapList.size()];
if (!CollectionUtils.isEmpty(mapList)) {
int count = 0;
for (LinkedHashMap<String, Object> map : mapList) {
mapArr[count++] = map;
}
}
Stream<Map<String, Object>> people = Stream.of(mapArr);
groupedResult = people
.collect(Collectors.groupingBy(p -> new GroupingKey(p, groupByColumns), Collectors.mapping((Map<String, Object> p) -> p, toList())));
public static class GroupingKey
public GroupingKey(Map<String, Object> map, List<String> cols) {
keys = new ArrayList<>();
for (String col : cols) {
keys.add(map.get(col));
}
}
// Add …Run Code Online (Sandbox Code Playgroud) grouping ×10
arrays ×3
java-8 ×2
java-stream ×2
.net ×1
coding-style ×1
collect ×1
collectors ×1
cube ×1
datagrid ×1
ggplot2 ×1
graph-theory ×1
graphviz ×1
has-many ×1
java ×1
javascript ×1
list ×1
php ×1
python ×1
r ×1
rollup ×1
sql ×1
sql-server ×1
stylesheet ×1
wpf ×1