标签: aggregate

如何在R中聚合这些数据

我在R中有一个数据框,结构如下.

> testData
            date exch.code comm.code     oi
1     1997-12-30       CBT         1 468710
2     1997-12-23       CBT         1 457165
3     1997-12-19       CBT         1 461520
4     1997-12-16       CBT         1 444190
5     1997-12-09       CBT         1 446190
6     1997-12-02       CBT         1 443085
....
    77827 2004-10-26      NYME       967  10038
    77828 2004-10-19      NYME       967   9910
    77829 2004-10-12      NYME       967  10195
    77830 2004-09-28      NYME       967   9970
    77831 2004-08-31      NYME       967   9155
    77832 2004-08-24      NYME       967   8655
Run Code Online (Sandbox Code Playgroud)

我想要做的是生成一个表格,显示给定日期和商品的每个交换代码的总oi.因此,行将由行组成

unique(testData$date)
Run Code Online (Sandbox Code Playgroud)

而列将是

unique(testData$comm.code)
Run Code Online (Sandbox Code Playgroud)

并且每个单元格将是给定日期所有exch.codes的总oi.

谢谢,

aggregate r

6
推荐指数
3
解决办法
3056
查看次数

在一个查询中计算MySQL中的多行

我目前有一个表,可以存储大量项目的统计信息,例如视图,下载,购买等.为了获得每个项目的单个操作计数,我可以使用以下查询:

SELECT *, COUNT(*)
FROM stats
WHERE operation = 'view'
GROUP BY item_id
Run Code Online (Sandbox Code Playgroud)

这给了我所有的项目和他们的观点.然后,我可以将"查看"更改为"购买"或"下载"其他变量.但是,这意味着对数据库进行三次单独调用.

是否有可能将三者合二为一?

mysql sql group-by aggregate

6
推荐指数
1
解决办法
2万
查看次数

NHibernate QueryOver选择实体和聚合

我想要做的是显示一个简单的数据网格,其中包含实体数据及其子项的聚合数据.例如,我们使用订单和订单项.我想显示订单信息和订单项的数量.

OrderID,OrderDate,NumOfLineItems

现在通常在SQL中,您可以通过多种方式完成.但这是我能想到的唯一可以在翻译成NHibernate时使用的方法.

SELECT o.OrderID, OrderDate, NumOfLineItems
FROM #Orders o
INNER JOIN
(SELECT o2.OrderID, COUNT(*) As NumOfLineItems FROM #LineItems l
INNER JOIN #Orders o2 ON o2.OrderID = l.OrderID
WHERE UserID = 1 GROUP BY o2.OrderID) t1 ON o.OrderID = t1.OrderID
WHERE UserID = 1
Run Code Online (Sandbox Code Playgroud)

我知道还有其他方法,但我正在考虑NHibernate允许我使用QueryOver语法的方式.我不想使用派生列.我试图避免编写SQL.

对于我的实体,我有一个Order实体和一个AggregatedOrder实体,在这种情况下它将是我的DTO,我计划使用变换器aliastobean将数据复制到其中.

我完全不知道如何解决这个问题.

到目前为止我所有的一切:

        QueryOver<LineItem> x = QueryOver.Of<LineItem>()
            .SelectList(p => p .SelectCount(l => l.Id).WithAlias(() => itemAlias.NumOfLineItems))
            .JoinQueryOver<Order>(l => l.Order)
            .Where(o => o.UserID == userID)


        var y = session.QueryOver<Listing>()
            .JoinQueryOver<Bid>(x); // no idea whats going on here
Run Code Online (Sandbox Code Playgroud)

nhibernate aggregate correlated-subquery queryover

6
推荐指数
1
解决办法
3783
查看次数

R:具有列特定功能的聚合

我想按时间间隔聚合数据帧,对每列应用不同的函数.我想我几乎已经aggregate失败了,并且已将我的数据分成与chron包装的间隔,这很容易.

但我不知道如何处理子集.所有的地图功能,*apply,*ply,采取一种功能(我希望的东西,拿了功能的载体每列或-variable申请,但还没有找到一个),所以我在写一个函数,我的数据框架子集,并给出所有变量的均值,除了"时间",它是索引,"径流"应该是总和.

我试过这个:

aggregate(d., list(Time=trunc(d.$time, "00:10:00")), function (dat) with(dat, 
list(Time=time[1], mean(Port.1), mean(Port.1.1), mean(Port.2), mean(Port.2.1), 
mean(Port.3), mean(Port.3.1), mean(Port.4), mean(Port.4.1), Runoff=sum(Port.5))))
Run Code Online (Sandbox Code Playgroud)

即使它没有给我这个错误,这将是丑陋的:

Error in eval(substitute(expr), data, enclos = parent.frame()) : 
  not that many frames on the stack
Run Code Online (Sandbox Code Playgroud)

这告诉我,我真的做错了什么.从我看到的RI看来,必须有一种优雅的方式来做到这一点,但它是什么?

dput:

d. <- structure(list(time = structure(c(15030.5520833333, 15030.5555555556, 
15030.5590277778, 15030.5625, 15030.5659722222), format = structure(c("m/d/y", 
"h:m:s"), .Names = c("dates", "times")), origin = structure(c(1, 
1, 1970), .Names = c("month", "day", "year")), class = c("chron", 
"dates", "times")), Port.1 = c(0.359747, …
Run Code Online (Sandbox Code Playgroud)

aggregate r

6
推荐指数
2
解决办法
3403
查看次数

Hive数组类型的求和值

Hive有这个相当不错的Array类型,在理论上非常有用,但是当涉及到实践时,我发现很少有关于如何用它做任何类型的操作的信息.我们在数组类型列中存储一系列数字,并且需要在查询中对它们进行求和,最好是从第n个元素到第m个元素.是否可以使用标准HiveQL或是否需要UDF或客户映射器/缩减器?

注意:我们在EMR环境中使用Hive 0.8.1.

arrays hadoop hive aggregate aggregation

6
推荐指数
1
解决办法
1万
查看次数

wso2 ESB:分割/聚集模式 - 单一响应

不是一个问题,而是一个答案.我是wso2 ESB的新手,并希望在POC中实现拆分/收集EIP的测试运行.我按照我找到的示例,立即得到了一个返回单个响应的工作配置.然而,要获得所有回复,需要花费相当多的时间才能弄明白.大多数给定的样本似乎产生了相同的意外结果.我希望如果遇到同样的问题,这些行对你有帮助.

建立

我使用soapUI示例服务(搜索操作)作为服务后端.我发送了一个组合消息,搜索两个项目到代理服务器(参见下面的artefact)迭代中介器拆分消息并将其转发到调用soapUI模型的端点.该总调解人等待所有响应,并试图把它变成一个结果消息.

问题

虽然拆分器工作正常,但聚合器返回一个结果元素而不是预期的元素列表.所有日志显示一切正常,几个请求被发送到相应的端点,但仍然只有最终响应返回的最终响应.

在将代理的日志级别设置为TRACE之后,我意识到聚合器工作得很好,只是它创建了一个不符合SOAP的消息.所有聚集的元素直接添加到肥皂体下面.所以问题是如何在body和result标签之间添加一个根元素.我首先尝试了XSLT,但它也只能读取正文的第一个子元素.最后,我发现了一些深埋提示使用充实调解员(或相当的一系列),并且没有的伎俩.以下列表说明了大多数示例中未找到的配置部分(如下所示).

  1. 首先使用Enrich将所有相关项目捕获到属性中
  2. 忘记当前消息 - 用仅包含新有效负载根元素的主体重写完整的包络
  3. 将存储在属性中的元素附加到新的有效负载根目录.
  4. 如果需要,将soap标头捕获到属性中并将其附加到新的msg中(不在下面的配置中)

文物

演示请求

<body>
   <sam:multisearch xmlns:sam="http://www.example.org/sample/">
      <sam:search>
         <sessionid>123</sessionid>
         <searchstring>Item 1</searchstring>
      </sam:search>
      <sam:search>
         <sessionid>123</sessionid>
         <searchstring>Item 2</searchstring>
      </sam:search>
   </sam:multisearch>
</body>
Run Code Online (Sandbox Code Playgroud)

配置

<proxy xmlns="http://ws.apache.org/ns/synapse" name="test.multisearch" transports="https,http" statistics="enable" trace="enable" startOnLoad="true">
   <target>
      <inSequence>
         <iterate xmlns:sam="http://www.example.org/sample/" expression="//sam:multisearch/sam:search">
            <target>
               <sequence>
                  <send>
                     <endpoint key="soapUI_Mockup"/>
                  </send>
               </sequence>
            </target>
         </iterate>
      </inSequence> …
Run Code Online (Sandbox Code Playgroud)

esb aggregate wso2 mediator

6
推荐指数
1
解决办法
3304
查看次数

选择列表中的列无效,因为该列未包含在聚合函数或GROUP BY子句中

我们有一个表格,可以记录每个表格的刷卡记录employee。我正在尝试编写一个查询,以通过今天的第一次滑动来获取不同员工记录的列表。

我们将滑动日期信息保存在datetime列中。这是我的查询的抛出异常。

 select distinct 
    [employee number], [Employee First Name]
    ,[Employee Last Name]
    ,min([DateTime])
    ,[Card Number]
    ,[Reader Name]
    ,[Status]
    ,[Location] 
from 
    [Interface].[dbo].[VwEmpSwipeDetail] 
group by  
    [employee number] 
where 
    [datetime] = CURDATE();
Run Code Online (Sandbox Code Playgroud)

出现错误:

在选择列表中,“ Interface.dbo.VwEmpSwipeDetail.Employee名”列无效,因为它不包含在聚合函数或GROUP BY子句中。

有什么帮助吗?

提前致谢。

sql sql-server group-by aggregate

6
推荐指数
2
解决办法
6万
查看次数

在Python中解析,聚合和排序文本文件

我有一个名为"names.txt"的文件,其中包含以下内容:

{"1":[1988, "Anil 4"], "2":[2000, "Chris 4"], "3":[1988, "Rahul 1"],
"4":[2001, "Kechit 3"], "5":[2000, "Phil 3"], "6":[2001, "Ravi 4"],
"7":[1988, "Ramu 3"], "8":[1988, "Raheem 5"], "9":[1988, "Kranti 2"],
"10":[2000, "Wayne 1"], "11":[2000, "Javier 2"], "12":[2000, "Juan 2"],
"13":[2001, "Gaston 2"], "14":[2001, "Diego 5"], "15":[2001, "Fernando 1"]}
Run Code Online (Sandbox Code Playgroud)

问题陈述:文件"names.txt"包含一些格式的学生记录 -

{"number": [year of birth, "name rank"]}

解析此文件并根据年份对其进行隔离,然后根据排名对名称进行排序.首先进行隔离然后排序.输出应采用以下格式 -

{year : [Names of students in sorted order according to rank]}
Run Code Online (Sandbox Code Playgroud)

所以预期的产量是 -

{1988:["Rahul 1","Kranti 2","Rama 3","Anil 4","Raheem 5"],
2000:["Wayne 1","Javier 2","Jaan 2","Phil 3","Chris …
Run Code Online (Sandbox Code Playgroud)

python sorting grouping aggregate fileparsing

6
推荐指数
1
解决办法
961
查看次数

为什么我不能像这样对std :: array进行脱盐?

为什么我不能像这样对std :: array进行脱盐?

#include <array>

struct Point
{
    float x;
    float y;
};

int main()
{
   std::array<Point, 3> m_points { 
      { 1.0f, 1.0f }, 
      { 2.0f, 2.0f }, 
      { 3.0f, 3.0f }
   };
}
Run Code Online (Sandbox Code Playgroud)

这样做我得到错误:

错误:初始化程序太多了 std::array<Point, 3ul>

但它的工作原理如下:

std::array<Point, 3> m_points { 
   Point{ 1.0f, 1.0f }, 
   Point{ 2.0f, 2.0f }, 
   Point{ 3.0f, 3.0f } 
};
Run Code Online (Sandbox Code Playgroud)

相比之下,std::map可以使用以下两种方式初始化:

   std::map<int, int> m1 {std::pair<int, int>{1,2}, std::pair<int, int>{3,4}}; 
   std::map<int, int> m2 {{1,2}, {3,4}};
Run Code Online (Sandbox Code Playgroud)

c++ aggregate initialization declaration c++14

6
推荐指数
1
解决办法
292
查看次数

Elasticsearch - 根据得分排名userIds

我正在尝试将旧MySQL数据库的一些查询迁移到我们新的Elasticsearch设置中.数据有点复杂,但归结为以下几点:

我有一个包含很多分数的索引.每个分数代表玩家在特定游戏中得分.

{
  "userId": 2,
  "scoreId": 3457,
  "game": {
    "id": 6,
    "name": "scrabble"
  },
  "date": 1340047100,
  "score": 56,
  // and more game data
}
Run Code Online (Sandbox Code Playgroud)

scoreId是这个分数的唯一ID,game.id是该类型游戏的ID.

{
  "userId": 6,
  "gameId": 3479,
  "game": {
    "id": 5,
    "name": "risk"
  },
  "date": "1380067200",
  "score": 100,
  // and more game data
}
Run Code Online (Sandbox Code Playgroud)

多年来,我们玩了许多不同的游戏,我想为每种类型的游戏排名最好的玩家.排名基于每位玩家的最佳6场比赛.因此,例如,如果玩家玩拼字游戏10次,则只有6个最佳分数计入其总分.

我想创建一个列表,如:

// Scrabble ranking:
# | user | total points  
1 |  2   | 4500
2 |  6   | 3200
2 |  23  | 1500
Run Code Online (Sandbox Code Playgroud)

迁移的原因是旧的MySQL查询首先获得每个游戏的所有不同用户的列表,然后为每个用户执行另一个查询以获得其最佳的6个分数.我希望我可以使用弹性聚合在一个查询中完成所有操作,但到目前为止我无法使其工作.

问题是,经过几个小时的阅读弹性文档后,似乎我的问题比例子更复杂.也许如果有人能指出我正确的方向,我可以继续我的搜索.至少这不是让我在任何地方:

GET /my-index/scores/_search …
Run Code Online (Sandbox Code Playgroud)

aggregate elasticsearch

6
推荐指数
1
解决办法
301
查看次数