首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何存储一行中的变量,以便在后面的一行中使用。

如何存储一行中的变量,以便在后面的一行中使用。
EN

Stack Overflow用户
提问于 2014-12-15 21:56:41
回答 2查看 240关注 0票数 3

我必须处理一个电子表格,其中包含多个级别的聚合。大多数情况下,这很好,但在一种情况下,我需要将来自最高聚合级别的信息与来自下一个聚合级别的信息结合使用。下面是一个例子:

代码语言:javascript
复制
Title,         Platform,    Quantity, Revenue
"Some title",          ,    100,      1000.00
            , "Platform A", 12,       120.00
            , "Platform B", 20,       200.00
            , "Platform C", 68,       680.00

"Some other title",       , 20,       200.00
            , "Platform B", 20,       200.00
...

第一条记录有一个标题,“一些标题”,以及所有平台的聚合数量和收入指标。这就是我需要阅读的大部分内容。然而,在一种情况下,比如“平台B",我需要检索该平台的特定值,并且我需要知道这些值的标题是什么。

有人知道怎么做吗?

EN

回答 2

Stack Overflow用户

发布于 2014-12-16 16:29:57

为此,我提出了一个jira:

http://jira.pentaho.com/browse/PDI-13296

因为这并不是一目了然的。

我只能想到在“修改的javascript步骤”中做这件事,这是一个很小的代码片段,它记住了title之前的值,然后在title为null的时候替换掉它。

这确实假设您的数据始终以这种方式排序,并且假设您的第一行始终具有值。

如果你有一些可以分组的东西(例如,你没有显示的一些额外的属性?)然后,您可以在该步骤中使用“传递所有行”选项,并在标题字段的聚合上获取组的"first non null“值。

票数 2
EN

Stack Overflow用户

发布于 2016-05-05 00:43:29

在我看来,您似乎正在尝试扁平化您的数据(某种程度上)。

我可能做错了,但以下是对类似数据集适用的方法:

序号(假设您的数据已经按所示的顺序排列)公式步骤:IF( above)

  • (Marker)“”;1;0)-此标志在新组序号( Marker

  • (Group)

  • ,Seq )的开始位置为0序号步骤:仅以1个因子(

  • ,SeqCounter )添加值字段开始的直线序号,更改序号步长:使用“SeqCounter”作为change field.

  • (Factor)计算器字段: A*B;TITLE=*

计算器字段: A+B;序号+因子

这应该会给你一个" group“字段,告诉你每行是哪个组的一部分。

然后,我只需拆分数据,并使用组作为连接字段重新连接。

我知道这是一个古老的帖子,但由于我在搜索时没有找到解决方案,我想我应该把这篇文章放出来让别人找到。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27485683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档