我在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.
谢谢,
我目前有一个表,可以存储大量项目的统计信息,例如视图,下载,购买等.为了获得每个项目的单个操作计数,我可以使用以下查询:
SELECT *, COUNT(*)
FROM stats
WHERE operation = 'view'
GROUP BY item_id
Run Code Online (Sandbox Code Playgroud)
这给了我所有的项目和他们的观点.然后,我可以将"查看"更改为"购买"或"下载"其他变量.但是,这意味着对数据库进行三次单独调用.
是否有可能将三者合二为一?
我想要做的是显示一个简单的数据网格,其中包含实体数据及其子项的聚合数据.例如,我们使用订单和订单项.我想显示订单信息和订单项的数量.
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) 我想按时间间隔聚合数据帧,对每列应用不同的函数.我想我几乎已经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) Hive有这个相当不错的Array类型,在理论上非常有用,但是当涉及到实践时,我发现很少有关于如何用它做任何类型的操作的信息.我们在数组类型列中存储一系列数字,并且需要在查询中对它们进行求和,最好是从第n个元素到第m个元素.是否可以使用标准HiveQL或是否需要UDF或客户映射器/缩减器?
注意:我们在EMR环境中使用Hive 0.8.1.
这不是一个问题,而是一个答案.我是wso2 ESB的新手,并希望在POC中实现拆分/收集EIP的测试运行.我按照我找到的示例,立即得到了一个返回单个响应的工作配置.然而,要获得所有回复,需要花费相当多的时间才能弄明白.大多数给定的样本似乎产生了相同的意外结果.我希望如果遇到同样的问题,这些行对你有帮助.
我使用soapUI示例服务(搜索操作)作为服务后端.我发送了一个组合消息,搜索两个项目到代理服务器(参见下面的artefact)迭代中介器拆分消息并将其转发到调用soapUI模型的端点.该总调解人等待所有响应,并试图把它变成一个结果消息.
虽然拆分器工作正常,但聚合器只返回一个结果元素而不是预期的元素列表.所有日志显示一切正常,几个请求被发送到相应的端点,但仍然只有最终响应返回的最终响应.
在将代理的日志级别设置为TRACE之后,我意识到聚合器工作得很好,只是它创建了一个不符合SOAP的消息.所有聚集的元素都直接添加到肥皂体下面.所以问题是如何在body和result标签之间添加一个根元素.我首先尝试了XSLT,但它也只能读取正文的第一个子元素.最后,我发现了一些深埋提示使用的充实调解员(或相当的一系列),并且没有的伎俩.以下列表说明了大多数示例中未找到的配置部分(如下所示).
<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) 我们有一个表格,可以记录每个表格的刷卡记录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子句中。
有什么帮助吗?
提前致谢。
我有一个名为"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) 为什么我不能像这样对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) 我正在尝试将旧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 ×10
group-by ×2
r ×2
sql ×2
aggregation ×1
arrays ×1
c++ ×1
c++14 ×1
declaration ×1
esb ×1
fileparsing ×1
grouping ×1
hadoop ×1
hive ×1
mediator ×1
mysql ×1
nhibernate ×1
python ×1
queryover ×1
sorting ×1
sql-server ×1
wso2 ×1