问题标签 [alteryx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
461 浏览

regex - 正则表达式仅匹配从文本顶部开始的第一次出现

我正在努力在匹配模式后提取特定字符串集,但结果与预期不符。该函数不是从文本文件顶部开始第一次出现,而是选择最后一次出现。

功能:

示例文本:

发件人:Y 发送时间:2018 年 11 月 6 日,星期一 6:38 AM 收件人:X

布拉布拉

谢谢,

发件人:X 发送时间:2018 年 11 月 5 日,星期一 8:38 AM 收件人:Y

嗨 Y BLA

谢谢,

预期成绩:

目前返回:

0 投票
1 回答
86 浏览

alteryx - 如何输出到源数据文件?

我是 Alteryx 的新手,并且正在构建一个工作流,该工作流将与几个不同的 Excel 报告一起使用。每个报告都有不同的格式(不同的列标题等)。

在运行工作流之前,我更改了数据输入并更新了Select Tool中的字段。

在工作流结束时,我需要将结果输出到原始 Excel 工作簿中的新工作表。

我知道输入工具有“输出文件名作为字段”选项,但我不知道如何在输出工具中使用它。

有一个更好的方法吗?现在,我必须在每次运行时在输入工具输出工具中选择新文件;如果我忘记更改输出,它将覆盖错误文件中的工作表。

0 投票
2 回答
246 浏览

regex - 使用 RegEx 和 Alteryx 替换字符串

我有一个简单的问题:使用 Alteryx,我想获取一个字符串,匹配某个模式并返回匹配的模式。

这是我目前的做法:

根据 regex101 等各种来源和工具,第一个匹配的序列应该是“CP:ConsumerProducts&Retail”。但是,Alteryx 返回

Alteryx 使用 Perl RegEx 语法 ( https://help.alteryx.com/2018.2/boost/syntax_perl.html ),因此,模式本身应该没有问题。

我相信我遗漏了一些明显的东西,但我无法弄清楚。

0 投票
2 回答
476 浏览

alteryx - 基于分隔符 Alteryx 拆分字符串

我有一个这样的字符串

Abc\defg\hijk\lmn

我的要求是根据分隔符 **** 获取上述字符串的最后一部分

我尝试了文本到列工具,它需要更多的过滤和公式。我真的相信应该有一个更简单的方法。

0 投票
1 回答
3641 浏览

excel - Excel 动态表与另一个工作表中的数据

我正在尝试创建一个动态范围表,该表从另一张表中获取数据。简短的故事是我需要这样做,因为 Alteryx 在每次运行时上传新数据时都会删除同名的旧现有工作表。

在此处输入图像描述

我正在从该表形成的数据透视表中填写一个模板,该表采用原始数据(总共 4 张)。

问题:我遇到的问题是原始数据和表格。表格表需要模仿原始数据表的确切数据,但以表格形式。所以有两件事需要考虑:原始数据的大小和实际数据本身。

怎么可能做到这一点?

在我回答多余的问题之前:

你为什么不在原始数据表上做一个表格?因为每次 Alteryx 运行时都会删除工作表,并且不会保存曾经存在过的表格

只是说单元格引用了另一个单元格/大小引用了大小是的,我明白了,但我在表格上让事情变得动态

制作一个巨大的表格来获取任何大小的数据范围并映射预期的列也是这样做的,但如果我告诉我的大学教授我是作为专业分析师这样做的,我会被打耳光

0 投票
1 回答
51 浏览

alteryx - 如何比较两个数据集并标记违反规则

一直被这个问题困住了一段时间。我无法通过使用 Alteryx 来实现预期结果的逻辑和实现进行思考。

有两个数据集,如下所示 -

数据集 1

第一个数据集中的风险和规则 ID 的组合导致了唯一的代码列表。

数据集 2

用户使用他们使用的代码进行标记。

当他们使用同一风险和规则 ID 系列中的代码时,就是违规。

我只是希望能够标记那些违反此规则的用户。

在上述数据集中,User1 违反了规则,因为他使用了两个代码(FBREV 和 FBREV1)。这两个代码都属于 (FR01+ 00Q) 规则。因此,我需要能够将 User1 标记为违反规则的人。User2 不违反规则,因为他没有使用代码 (FBOPO)。

几天来,我一直在为此烦恼。

0 投票
1 回答
150 浏览

regex - 如何使用正则表达式排除文本限定符内的分隔符?

我试图在文本限定符中排除分隔符。为此,我正在尝试使用正则表达式。但是,我是 Regex 的新手,无法完全满足我的需求。如果有人可以帮助我,我将非常感激。

在 Alteryx 中,我将分隔的平面文本文件加载为“非分隔”,并说它没有文本限定符。因此,输入看起来像这样:

  1. “aabb”|ccdd|eeff|gghh
  2. “aa|bb”|ccdd|eeff|gghh
  3. "aa|bb"|ccdd|"ee|ff"|gghh
  4. "aa|bb"|"cc|dd"|"ee|ff"|"gg|hh"
  5. “aabb”|“ccdd”|“eeff”|“gghh”
  6. "aabb"|"ccdd"|"eeff"|"gg|hh"
  7. aabb|ccdd|eeff|gghh
  8. "aa|bb"|ccdd|eeff|"gg|hh"
  9. aabb|cc|dd|eeff|gghh
  10. aabb|"cc||dd"|eeff|gghh
  11. aabb|"c|c|dd"|eeff|gghh
  12. “aa||bb”|ccdd|eeff|gghh
  13. “a|a|b|b”|ccdd|eeff|gghh
  14. "aabb"|ccdd|eeff|"g|g|hh"
  15. "aabb"|ccdd|eeff|"gg||hh"

我想排除文本限定符之间的所有分隔符。

我试图使用正则表达式来替换文本限定符中的分隔符。

到目前为止,我已经为我的目标尝试了以下正则表达式代码:

我使用以下内容进行替换:$1$2$3$4

但是,这不会修复第 11、13、14 和 15 行。

我希望得到以下结果:

  1. “aabb”|ccdd|eeff|gghh
  2. “aabb”|ccdd|eeff|gghh
  3. “aabb”|ccdd|“eeff”|gghh
  4. “aabb”|“ccdd”|“eeff”|“gghh”
  5. “aabb”|“ccdd”|“eeff”|“gghh”
  6. “aabb”|“ccdd”|“eeff”|“gghh”
  7. aabb|ccdd|eeff|gghh
  8. “aabb”|ccdd|eeff|“gghh”
  9. aabb|cc|dd|eeff|gghh
  10. aabb|"ccdd"|eeff|gghh
  11. aabb|"ccdd"|eeff|gghh
  12. “aabb”|ccdd|eeff|gghh
  13. “aabb”|ccdd|eeff|gghh
  14. “aabb”|ccdd|eeff|“gghh”
  15. “aabb”|ccdd|eeff|“gghh”

预先感谢您帮助我!

亲切的问候, 罗宾

0 投票
2 回答
1047 浏览

sql - 如何将 nvarchar(254) 转换为十进制(7,2)

我有一个包含 10M+ 行的表,并且想要将其中一列的数据类型从nvarchar(254)更改为decimal(7,2)。进行此更改的最有效和最有效的查询是什么?

我尝试使用 ALTER 进行此更改,但在 SSMS 中出现错误

将数据类型 nvarchar 转换为数值时出错。

我也尝试过使用 CAST,但这也会导致错误。诚然,我不是 DBA,所以我很难理解以下内容:

  1. 如何正确编写不会产生错误的 CAST 查询

  2. CAST 和 CONVERT 函数是否更改了数据库级别的数据设计(意思是在对象资源管理器中,当我右键单击表然后单击“设计”时,我看到列的数据类型已更改)或者如果更改只会持续到下一个查询运行或程序退出。

该表最初是在一个多月前创建的,是几个月前运行的工作流的结果;此后,此工作流程已计划以每小时的节奏将新数据推送到表中,因此删除作业/表并重新开始不是一种选择。

最终目标是正确存储这些数据,以便在将其摄取到其他可视化程序(例如,Tableau、Power BI 等)中时可以执行算术运算。也就是说,这里的预期结果是要更改数据类型toDecimal(7,2)但实际结果是nvarchar(254).

更新

运行后SELECT Price from Clone3 WHERE TRY_CONVERT(decimal(7,2),Price) IS NULL有 239 条记录以科学计数法返回。例如 -5.0000000000000003E-2

最后更新

我运行以下查询来更新导致转换错误的记录(这些是负数,例如“-0.05”,由于某种奇怪的原因被转换为科学记数法)。

UPDATE Clone3 SET Price = CAST(Price AS Float) WHERE TRY_CONVERT(decimal(7,2), Price) IS NULL

因为所有记录现在都是数字数据类型,所以我可以使用此查询将整个数据集转换为十进制 (7,2)。

ALTER TABLE Clone3 ALTER COLUMN Price decimal(7,2)

我想我可以称之为解决了,非常感谢大家的回复,特别是 @Larnu 提供的代码片段最终帮助我解决了这个问题。

0 投票
1 回答
49 浏览

alteryx - 操作更新值适用于过滤器,但不适用于过滤器 In-DB

在我的工作流程中,带有更新值操作的日期界面工具适用于过滤器,但不适用于数据库中的过滤器。我宁愿使用 Filter In-DB,以避免将不需要的 100K+ 记录放入 Alteryx 数据流中。

错误消息,减少到相关部分:

出现错误:Filter In-DB (19): Error opening "WITH "Tool8_6ab5" AS (Select ...connection select statement...) SELECT * FROM "Tool8_6ab5" WHERE "ReturnDate" = 2018-11-30":没有返回列。

2018-11-30 是正确的日期,在 Filter In-DB 中更改为 Run As Analytic App 期间选择的值,形成默认日期。通过过滤器使用相同的日期返回记录。让我知道是否有任何其他信息会有所帮助,我将编辑问题。

0 投票
1 回答
44 浏览

regex - Trying to separate the year month and day fields via RegEx

I have a series of dates that I am trying to separate into years, months and days. These dates are in the yyyy-mm-dd format. I'm not very familiar with RegEx, but I have tried (\dddd)\-(\dd)\-(\dd).

Any help is appreciated.