Be sure to review our Idea Submission Guidelines for more information!
Submission GuidelinesHello,
After used the new "Image Recognition Tool" a few days, I think you could improve it :
> by adding the dimensional constraints in front of each of the pre-trained models,
> by adding a true tool to divide the training data correctly (in order to have an equivalent number of images for each of the labels)
> at least, allow the tool to use black & white images (I wanted to test it on the MNIST, but the tool tells me that it necessarily needs RGB images) ?
Question : do you in the future allow the user to choose between CPU or GPU usage ?
In any case, thank you again for this new tool, it is certainly perfectible, but very simple to use, and I sincerely think that it will allow a greater number of people to understand the many use cases made possible thanks to image recognition.
Thank you again
Kévin VANCAPPEL (France ;-))
Thank you again.
Kévin VANCAPPEL
It would be great to be able to use keyboard shortcuts to be able to switch between the different tools in the canvas, or use the keyboard shortcut to select different tools from the Tool Pallette (similar to Excel).
The Join Tool tells you which records did not match (Left and Right) but it does not tell you what fields it did not match on. This could quickly help the analyst determine which fields they need to look into to determine why there are unmatched records. When joining on 5+ fields it becomes difficult to determine why some records did not match without manually inspecting each record which is time consuming. The column title could be: Unmatched Field(s) and the values should be concatenated separated by commas.
When the name of a field is changed early in a workflow, all corresponding tools that use the renamed field should have the option to auto update the field name. This way I don't have to manully update the name of each effected field.
*unknown field is not available in the interface list box when it connected to a macro input.
i wish it has the "*unknown" field like in the select tool.
because it normal that the data flow has new columns and need the macro to take care the new columns.
For tools that have 2 input or output anchors, the ability to right-click the tool and select "swap connections" to swap the connections coming out of the 2 input or output anchors. Let's say, with 5 connections coming out of the Unique's U Anchor and 3 coming out of the D anchor, we need to disconnect and reconnect connections 8 times in order to switch everything between U and D. Even if the tool has 1 connection per anchor, this would still be faster than removing + connecting each connection manually. Tool examples include Append data, Join, Unique, Macros with 2 inputs or outputs, etc.
for iterative macro, generally it had 2 anchors, one if it is for iterative, and it normally no output (whether got error or not)
it good to have option to remove this anchor when using it in workflow.
so other user no need to identify which one is the True output and which one is just iteration.
additional, if this can apply to input anchor.
(i just built one macro where i don't need the start input, but the input need to be iterate input)
(1) The green banner saying that the workflow has finished running should stay until dismissed
(2) The indicator on the tabs showing which workflows had run should be colour coded (still running / completed without errors / completed with errors)
Thanks!
The Email tool does not send out e-mails after an error occurred in the workflow. Since this usually is a good thing, it sometimes would be helpful being able to send out e-mails also in case of errors.
In particular, I want to send out an e-mail with a detailed and formatted custom error message.
Thus, please add a check box "Also send mail in case of errors" which is off by default.
Side note: The Event "Send mail After Run With Errors" does not work for me because it is too inflexible. Just sending out the OutputLog is not helpful because the error message might be hidden after hundreds of rows.
Hello,
A lot of tools that use R Macro (and not only preductive) are clearly outdated in several terms :
1/the R package
2/the presentation of the macro
3/the tools used
E.g. : the MB_Inspect
Ugly but wait there is more :
Also ; the UI doesn't help that much with field types.
Best regards,
Simon
as an analysis software. The result window plays a crucial role.
However, the numbers are not left-aligned, making it difficult to identify the number in the first grant.
and as most coding editor, monospace is recommend. it help to identify text length as well
Suggested Settings Adjustments:
1. Change of Font Type and Size: Include options for different fonts, including monospace.
2. Alignment: Provide options for left, right, and center alignment.
3. Option show whitespace
Hi there
My idea is to have an option to copy and paste a tools configuration to a different tool of the same type somewhere else on the canvas.
Example:
Say I have four summarise tools dealing with four different data streams, I envision a 'Copy Tool Configuration' option after right clicking on a tool and then a 'Paste Tool Configuration" which can be applied across the multiple instances of the summarise tool by overwriting. This would preserve the tools anchors incoming and outgoing connections.
Benefit:
This would increase the speed of developing workflows. Naturally this would be significantly quicker than copy and pasting tools, and then re-wiring anchors. Additionally, this would potentially reduce human error when iteratively developing workflows.
Regards - Rhys Cooper
I would love to have the option to easily disable a section of the workflow while diverting around the disabled tools.
I know the Detour and Detour End tools exist, but I think this functionality could be improved. My idea would be either/both of the following functions.
Break links between tools. Think of a workflow as a circuit board and the connection paths between tools as parts of a circuit. With every tool connected/enabled the full circuit is complete. However, if there is a section of the workflow which is temporarily unneeded, it would be great to have the option to break the connection between tools and then reconnect at a later point to complete the circuit. My idea would be to have the option on a line/path to break the connection temporarily (greying out the tools downstream) and enabling it further downstream. It's similar to what the Detour and Detour End do, but without needing additional tools on the canvas
Everything enabled | [ tool ] ---- [ tool ] ---- [ tool ] ---- [ tool ] ---- [ tool ] ---- [ tool ] |
First and last enabled but links to 4 tools in the middle are broken, diverting around them with no other tools needed. | [ tool ] ->( - )<- [ tool ] --/-- [ tool ] --/-- [ tool ] --/-- [ tool ] ->( + )<- [ tool ] |
Alternatively, if you were to select the unneeded tools in the workflow and place them into a container, then disable it, it could skip those disabled tools without breaking the circuit.
[ tool ] ---- [ tool ] ---- [ tool ] ---- [ tool ] ---- [ tool ] ---- [ tool ]
[ tool ] -> | <- [ tool ] --/-- [ tool ] --/-- [ tool ] --/-- [ tool ] -> | <- [ tool ] |
Most tools do not result in record changes: Select Tool, Data Cleansing, Record ID, Formula, Auto Field, Multi Field/Row, etc. It would be nice to be able to tell Alteryx which tools to display the Connection Progress; specifically the Record Counts. It would reduce the clutter/noise and allow the Record Counts to only display for the tools that matter to the analyst/user. Right now it displays for all tools regardless of whether the records changed or not. My hope would be to tell Alteryx to only display the Record Counts for tools like: Input, Output, Filter, Join, Summarize, Crosstab, Unique, etc. and ignore all other tools.
The current approach gives me both Record Counts and Total Record Size in KB, but I don't need or want the KB.
The option I am requesting does not currently exist. It would remove the KB and leave you with just the Record Counts. KB is useless to me. I only care about Record Counts. This option would help reduce the noise/clutter of the KBs.
Hello,
Unless you're lucky, your input dataset can have fields with the wrong types. That can lead to several issues such as :
-performance (a string is waaaaaaaay slower than let's say a boolean)
-compliance with master data management
-functional understanding (e.g : if i have a field called "modified" typed as string, I don't know if it contains the modification date, an information about the modification, etc... while if it's is typed as date, I already know it's a date)
-ability to do some type-specific operations (you can't multiply a string or extract a week from a string)
right now, the existing tools have been focused on strings but I think we can do better.
Here a proposition :
entry : a dataframe
configuration :
-selection of fields
or
-selection of field types
-ability to do it on a sample (optional)
Algo :
Alteryx | Byte | bool | only 2 values. 0 and 1 | to be done |
Alteryx | Int16 | bool | only 2 values. 0 and 1 | to be done |
Alteryx | Int16 | Byte | min=>0, max <=255 | to be done |
Alteryx | Int32 | bool | only 2 values. 0 and 1 | to be done |
Alteryx | Int32 | Byte | min>=0, max <=255 | to be done |
Alteryx | Int32 | Int16 | min>=-32,768, max <=32,767 | to be done |
Alteryx | Int64 | bool | only 2 values. 0 and 1 | to be done |
Alteryx | Int64 | Byte | min>=0, max <=255 | to be done |
Alteryx | Int64 | Int16 | min>=-32,768, max <=32,767 | to be done |
Alteryx | Int64 | Int32 | min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | Fixed Decimal | bool | only 2 values. 0 and 1 | to be done |
Alteryx | Fixed Decimal | Byte | No decimal part, min>=0, max <=255 | to be done |
Alteryx | Fixed Decimal | Int16 | No decimal part, min>=-32,768, max <=32,767 | to be done |
Alteryx | Fixed Decimal | Int32 | No decimal part, min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | Fixed Decimal | Int36 | No decimal part, min>=-––9,223,372,036,854,775,808, max <=9,223,372,036,854,775,807 | to be done |
Alteryx | Float | bool | only 2 values. 0 and 1 or 0,-1 | to be done |
Alteryx | Float | Byte | No decimal part, min>=0, max <=255 | to be done |
Alteryx | Float | Int16 | No decimal part, min>=-32,768, max <=32,767 | to be done |
Alteryx | Float | Int32 | No decimal part, min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | Float | Int36 | No decimal part, min>=-––9,223,372,036,854,775,808, max <=9,223,372,036,854,775,807 | to be done |
Alteryx | Float | Fixed Decimal | to be done | to be done |
Alteryx | Double | bool | only 2 values. 0 and 1 or 0,-1 | to be done |
Alteryx | Double | Byte | No decimal part, min>=0, max <=255 | to be done |
Alteryx | Double | Int16 | No decimal part, min>=-32,768, max <=32,767 | to be done |
Alteryx | Double | Int32 | No decimal part, min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | Double | Int36 | No decimal part, min>=-––9,223,372,036,854,775,808, max <=9,223,372,036,854,775,807 | to be done |
Alteryx | Double | Fixed Decimal | to be done | to be done |
Alteryx | Double | Float | when no need for doube precision | to be done |
Alteryx | DateTime | Date | no hours, minutes, seconds | to be done |
Alteryx | String | bool | only 2 values. 0 and 1 or 0,-1 or True/False or TRUE/FALSE or equivalent in some languages such as VRAI/FAUX, Vrai/Faux | to be done |
Alteryx | String | Byte | No decimal part, min>=0, max <=255 | to be done |
Alteryx | String | Int16 | No decimal part, min>=-32,768, max <=32,767 | to be done |
Alteryx | String | Int32 | No decimal part, min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | String | Int36 | No decimal part, min>=-––9,223,372,036,854,775,808, max <=9,223,372,036,854,775,807 | to be done |
Alteryx | String | Fixed Decimal | to be done | to be done |
Alteryx | String | Float | when no need for doube precision | to be done |
Alteryx | String | Double | when need for double precision | to be done |
Alteryx | String | Date | test on several date formats | to be done |
Alteryx | String | Time | test on several time formats | to be done |
Alteryx | String | DateTime | test on several datetime formats | to be done |
Alteryx | WString | bool | only 2 values. 0 and 1 or 0,-1 or True/False or TRUE/FALSE or equivalent in some languages such as VRAI/FAUX, Vrai/Faux | to be done |
Alteryx | WString | Byte | No decimal part, min>=0, max <=255 | to be done |
Alteryx | WString | Int16 | No decimal part, min>=-32,768, max <=32,767 | to be done |
Alteryx | WString | Int32 | No decimal part, min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | WString | Int36 | No decimal part, min>=-––9,223,372,036,854,775,808, max <=9,223,372,036,854,775,807 | to be done |
Alteryx | WString | Fixed Decimal | to be done | to be done |
Alteryx | WString | Float | when no need for doube precision | to be done |
Alteryx | WString | Double | when need for double precision | to be done |
Alteryx | WString | String | Latin-1 character only | to be done |
Alteryx | WString | Date | test on several date formats | to be done |
Alteryx | WString | Time | test on several time formats | to be done |
Alteryx | WString | DateTime | test on several datetime formats | to be done |
Alteryx | V_String | bool | only 2 values. 0 and 1 or 0,-1 or True/False or TRUE/FALSE or equivalent in some languages such as VRAI/FAUX, Vrai/Faux | to be done |
Alteryx | V_String | Byte | No decimal part, min>=0, max <=255 | to be done |
Alteryx | V_String | Int16 | No decimal part, min>=-32,768, max <=32,767 | to be done |
Alteryx | V_String | Int32 | No decimal part, min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | V_String | Int36 | No decimal part, min>=-––9,223,372,036,854,775,808, max <=9,223,372,036,854,775,807 | to be done |
Alteryx | V_String | Fixed Decimal | to be done | to be done |
Alteryx | V_String | Float | when no need for doube precision | to be done |
Alteryx | V_String | Double | when need for double precision | to be done |
Alteryx | V_String | String | Same length | to be done |
Alteryx | V_String | Date | test on several date formats | to be done |
Alteryx | V_String | Time | test on several time formats | to be done |
Alteryx | V_String | DateTime | test on several datetime formats | to be done |
Alteryx | V_WString | bool | only 2 values. 0 and 1 or 0,-1 or True/False or TRUE/FALSE or equivalent in some languages such as VRAI/FAUX, Vrai/Faux | to be done |
Alteryx | V_WString | Byte | No decimal part, min>=0, max <=255 | to be done |
Alteryx | V_WString | Int16 | No decimal part, min>=-32,768, max <=32,767 | to be done |
Alteryx | V_WString | Int32 | No decimal part, min>=-–2,147,483,648, max <=2,147,483,647 | to be done |
Alteryx | V_WString | Int36 | No decimal part, min>=-––9,223,372,036,854,775,808, max <=9,223,372,036,854,775,807 | to be done |
Alteryx | V_WString | Fixed Decimal | to be done | to be done |
Alteryx | V_WString | Float | when no need for doube precision | to be done |
Alteryx | V_WString | Double | when need for double precision | to be done |
Alteryx | V_WString | String | Same length,latin- character only | to be done |
Alteryx | V_WString | WString | Same length | to be done |
Alteryx | V_WString | V_String | latin- character only | to be done |
Alteryx | V_WString | Date | test on several date formats | to be done |
Alteryx | V_WString | Time | test on several time formats | to be done |
Alteryx | V_WString | DateTime | test on several datetime formats | to be done |
The output would be something like that
Field | Input type | Proposition | Conversion |
toto | float | int | formula (with example)/native tool/datetime conversion tool… |
Best regards,
Simon
Hello,
A lot of time, when you have a dataset, you want to know if there is a group of fields that works together. That can help to normalize (like de-joining) your data model for dataviz, performance issue or simplify your analysis.
Exemple
order_id item_id label model_id length color amount
1 | 1 | A | 10 | 15 | Blue | 101 |
2 | 1 | A | 10 | 15 | Blue | 101 |
3 | 2 | B | 10 | 15 | Blue | 101 |
4 | 2 | B | 10 | 15 | Blue | 101 |
5 | 2 | B | 10 | 15 | Blue | 101 |
6 | 3 | C | 20 | 25 | Red | 101 |
7 | 3 | C | 20 | 25 | Red | 101 |
8 | 3 | C | 20 | 25 | Red | 101 |
9 | 4 | D | 20 | 25 | Red | 101 |
10 | 4 | D | 20 | 25 | Red | 101 |
11 | 4 | D | 20 | 25 | Red | 101 |
Here, we could split the table in three :
-order
order_id item_id model_id amount
1 | 1 | 10 | 101,2 |
2 | 1 | 10 | 103 |
3 | 2 | 10 | 104,8 |
4 | 2 | 10 | 106,6 |
5 | 2 | 10 | 108,4 |
6 | 3 | 20 | 110,2 |
7 | 3 | 20 | 112 |
8 | 3 | 20 | 113,8 |
9 | 4 | 20 | 115,6 |
10 | 4 | 20 | 117,4 |
11 | 4 | 20 | 119,2 |
-model
model_id length color
10 | 15 | Blue |
20 | 25 | Red |
-item
item_id label
1 | A |
2 | B |
3 | C |
4 | D |
The tool would take :
-a dataframe in entry
-configuration : ability to select fields.
-output : a table with the recap of groups
<style> </style>
field group field remaining fields
1 | item_id | False |
1 | label | False |
2 | model_id | False |
2 | color | False |
3 | order_id | True |
3 | link to group 1 | True |
3 | link to group 2 | True |
3 | amount | True |
Very important : the non-selected fields (like here, amount), are in the result but all in the "remaining" group.
Algo steps:
1/pre-groups : count distinct of each fields. goal : optimization of algo, to avoid to calculate all pairs
fields that has the same count distinct than the number of rows are automatically excluded and sent to the remaining group
fields that have have the same count distinct are set in the same pre-group
2/ for each group, for each pair of fields,
let's do a distinct of value of the pair
like here
item_id label
1 | A |
2 | B |
3 | C |
4 | D |
if in this table, the count distinct of each field is equal to the number of rows, it's a "pair-group"
here, for the model, you will have
-model_id,length
-model_id,color
-length,color
3/Since a field can only belong to one group, it means model_id,length,color which would first (or second) group, then item_id and label
If a field does not belong to a group, he goes to "remaining group" at the end
in the remaining group, you can add a link to the other group since you don't know which field is the key.
<style> </style>
field group field remaining fields
1 | item_id | False |
1 | label | False |
2 | model_id | False |
2 | length | False |
2 | color | False |
3 | order_id | True |
3 | link to group 1 | True |
3 | link to group 2 | True |
3 | amount | True |
Best regards,
Simon
PS : I have in mind an evolution with links between non-remaining table (like here, the model could be linked to the item as an option)
Hi,
I appreciate this could be a repeat of this topic but I'm not able to find it easily if it is.
I want to locate a column in my results window with a simple search functionality. I'd like to search for a column and then it'll present back to me potential columns that I could then select to move me to in the results window. It's painful with a lot of columns to keep scrolling to find the one you're after:
All the best,
BS
When a workflow group is created/saved, could it by default always open the tabs in the order they were in when the Workflow Group was created?
As of now, the workflow tabs open at some undeterminable order and the user must take great care to switch from tab to tab in intended order. Sometime they are in the "correct" order, other times they randomly appear in different order.
Hello,
As of today, DCM is great to store credentials. But once we want to dive deeper in technicity, like using macros or Applications, it's really bad. One of the things I hate is that we can't retrieve any informations from the DCM connection, just the id. Not good for logs, really bad for understanding and have some conditional logic related to connection type or name.
Here an example
Nice, I managed to retrieve an id but I have no idea of what it means : what kind of connection? what's name?
Best regards,
Simon
When running a job in the gallery, a file output has to be chosen every time, even if there is no other option. I propose that under "My Profile >> Workflow Defaults" users be able to choose a preferred default file format for outputs. If it is available then the gallery will automatically choose that, otherwise the user can pick.