IP Library › Granted Patent US 10,817,533
Granted Patent B2
US 10,817,533 · App. 16/138,705 · Granted Oct 27, 2020

Graphical user interface for filtering import data in a data modeling mode of operation

Inventors: Jun Kim (Sammamish, WA); Will Pugh (Seattle, WA); Isaac Kunen (Seattle, WA)
Assignee: Tableau Software, Inc.
G06F16/258G06F16/248G06F16/2453G06F16/2455
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,817,533
App. No.
16/138,705
Granted
Oct 27, 2020
Kind
B2
Abstract

A method is performed at a computer. The computer retrieves a dataset from a database. The dataset includes a plurality of fields, including a first field. The computer displays a data-preparation graphical user interface, which includes a first region displaying a grid with columns corresponding to the fields and a second region that displays a sequence of operations applied to the dataset. The computer receives a user action to specify a first filter for the first field. The computer removes rows from the grid whose corresponding data values in the first column do not satisfy the first filter. The computer identifies some additional rows from the dataset, not previously displayed in the grid, whose data values for the first field satisfy the first filter, and displays the additional rows in the grid. The computer inserts an operation identifier into the third region, which identifies the first filter.

Claims (112)

1. A method, comprising:

at a computer having a display, one or more processors, and memory storing one or more programs configured for execution by the one or more processors:

retrieving a dataset from a database, wherein the dataset includes a plurality of fields, including a first field;

in response to retrieving the dataset, displaying a data-preparation graphical user interface that includes a first region displaying a grid with a respective column of data values from the dataset for each of the plurality of fields, including a first column displaying data values for the first field, and a second region that displays a sequence of operations applied to the dataset;

receiving a user action to specify a first filter for the first field; and

in response to receiving the user action:

removing rows from the grid whose corresponding data values in the first column do not satisfy the first filter;

identifying one or more additional rows from the dataset, not previously displayed in the grid, whose data values for the first field satisfy the first filter;

displaying the one or more additional rows in the grid; and

inserting an operation identifier into the third region that identifies the first filter;

wherein the first filter does not change an order of the data values displayed in the first column.

2. The method of claim 1 , further comprising:

receiving a second user action that specifies splitting of a second field of the plurality of fields;

in response to receiving the second user action:

adding a first new column and a second new column to the grid;

applying a splitting operation to each data value for the second field to form a respective primary data value and a respective secondary data value;

for each row in the grid, displaying the respective primary data value in the first new column and displaying the respective secondary data value in the second new column; and

inserting a second operation identifier into the third region that identifies the splitting operation.

3. The method of claim 2 , wherein:

the second field has a date data type; and

applying a splitting operation to each data value for the second field to form a respective primary data value and a respective secondary data value comprises:

computing a respective month value as the respective primary data value; and

computing a respective year value as the respective secondary data value.

4. The method of claim 1 , further comprising:

receiving a second user action that specifies merging data values for a second field and a third field of the plurality of fields;

in response to receiving the second user action:

adding a first new column to the grid;

for each row of the grid, concatenating a respective data value for the second field with a respective data value for the third field to form a respective merged value and displaying the respective merged value in the first new column; and

inserting a second operation identifier into the third region that identifies the merging.

5. The method of claim 1 , further comprising:

receiving a second user action on a cell in the grid, changing an initial value to a user-specified value, wherein the cell corresponds to a first row and corresponds to a second column;

in response to receiving the second user action:

identifying a plurality of rows in the grid that also have the same initial value in the second column;

for each of the identified plurality of rows, updating the data value in the second column to be the user-specified value, without additional user input; and

inserting a second operation identifier into the third region that identifies updating the data values for the second column.

6. The method of claim 5 , wherein the user-specified value is blank.

7. The method of claim 1 , wherein the third region is a data flow pane that includes a flow diagram having a plurality of nodes, at least a subset of the nodes correspond to the sequence of operations applied to the dataset, and inserting an operation identifier into the third region comprises inserting a new node into the flow diagram.

8. A computer system for data preparation, comprising:

a display;

one or more processors;

memory; and

one or more programs stored in the memory and configured for execution by the one or more processors, the one or more programs comprising instructions for:

retrieving a dataset from a database, wherein the dataset includes a plurality of fields, including a first field;

in response to retrieving the dataset, displaying a data-preparation graphical user interface that includes a first region displaying a grid with a respective column of data values from the dataset for each of the plurality of fields, including a first column displaying data values for the first field, and a second region that displays a sequence of operations applied to the dataset;

receiving a user action to specify a first filter for the first field; and

in response to receiving the user action:

removing rows from the grid whose corresponding data values in the first column do not satisfy the first filter;

identifying one or more additional rows from the dataset, not previously displayed in the grid, whose data values for the first field satisfy the first filter;

displaying the one or more additional rows in the grid; and

inserting an operation identifier into the third region that identifies the first filter;

wherein the first filter does not change an order of the data values displayed in the first column.

9. The computer system of claim 8 , wherein the one or more programs further comprise instructions for:

receiving a second user action that specifies splitting of a second field of the plurality of fields;

in response to receiving the second user action:

adding a first new column and a second new column to the grid;

applying a splitting operation to each data value for the second field to form a respective primary data value and a respective secondary data value;

for each row in the grid, displaying the respective primary data value in the first new column and displaying the respective secondary data value in the second new column; and

inserting a second operation identifier into the third region that identifies the splitting operation.

10. The computer system of claim 9 , wherein:

the second field has a date data type; and

applying a splitting operation to each data value for the second field to form a respective primary data value and a respective secondary data value comprises:

computing a respective month value as the respective primary data value; and

computing a respective year value as the respective secondary data value.

11. The computer system of claim 8 , wherein the one or more programs further comprise instructions for:

receiving a second user action that specifies merging data values for a second field and a third field of the plurality of fields;

in response to receiving the second user action:

adding a first new column to the grid;

for each row of the grid, concatenating a respective data value for the second field with a respective data value for the third field to form a respective merged value and displaying the respective merged value in the first new column; and

inserting a second operation identifier into the third region that identifies the merging.

12. The computer system of claim 8 , wherein the one or more programs further comprise instructions for:

receiving a second user action on a cell in the grid, changing an initial value to a user-specified value, wherein the cell corresponds to a first row and corresponds to a second column;

in response to receiving the second user action:

identifying a plurality of rows in the grid that also have the same initial value in the second column;

for each of the identified plurality of rows, updating the data value in the second column to be the user-specified value, without additional user input; and

inserting a second operation identifier into the third region that identifies updating the data values for the second column.

13. The computer system of claim 12 , wherein the user-specified value is blank.

14. The computer system of claim 8 , wherein the third region is a data flow pane that includes a flow diagram having a plurality of nodes, at least a subset of the nodes correspond to the sequence of operations applied to the dataset, and inserting an operation identifier into the third region comprises inserting a new node into the flow diagram.

15. A non-transitory computer-readable storage medium storing one or more programs configured for execution by a computer system having a display, one or more processors, and memory, the one or more programs comprising instructions for:

retrieving a dataset from a database, wherein the dataset includes a plurality of fields, including a first field;

in response to retrieving the dataset, displaying a data-preparation graphical user interface that includes a first region displaying a grid with a respective column of data values from the dataset for each of the plurality of fields, including a first column displaying data values for the first field, and a second region that displays a sequence of operations applied to the dataset;

receiving a user action to specify a first filter for the first field; and

in response to receiving the user action:

removing rows from the grid whose corresponding data values in the first column do not satisfy the first filter;

identifying one or more additional rows from the dataset, not previously displayed in the grid, whose data values for the first field satisfy the first filter;

displaying the one or more additional rows in the grid; and

inserting an operation identifier into the third region that identifies the first filter;

wherein the first filter does not change an order of the data values displayed in the first column.

16. The computer-readable storage medium of claim 15 , wherein the one or more programs further comprise instructions for:

receiving a second user action that specifies splitting of a second field of the plurality of fields;

in response to receiving the second user action:

adding a first new column and a second new column to the grid;

applying a splitting operation to each data value for the second field to form a respective primary data value and a respective secondary data value;

for each row in the grid, displaying the respective primary data value in the first new column and displaying the respective secondary data value in the second new column; and

inserting a second operation identifier into the third region that identifies the splitting operation.

17. The computer-readable storage medium of claim 16 , wherein:

the second field has a date data type; and

applying a splitting operation to each data value for the second field to form a respective primary data value and a respective secondary data value comprises:

computing a respective month value as the respective primary data value; and

computing a respective year value as the respective secondary data value.

18. The computer-readable storage medium of claim 15 , wherein the one or more programs further comprise instructions for:

receiving a second user action that specifies merging data values for a second field and a third field of the plurality of fields;

in response to receiving the second user action:

adding a first new column to the grid;

for each row of the grid, concatenating a respective data value for the second field with a respective data value for the third field to form a respective merged value and displaying the respective merged value in the first new column; and

inserting a second operation identifier into the third region that identifies the merging.

19. The computer-readable storage medium of claim 15 , wherein the one or more programs further comprise instructions for:

receiving a second user action on a cell in the grid, changing an initial value to a user-specified value, wherein the cell corresponds to a first row and corresponds to a second column;

in response to receiving the second user action:

identifying a plurality of rows in the grid that also have the same initial value in the second column;

for each of the identified plurality of rows, updating the data value in the second column to be the user-specified value, without additional user input; and

inserting a second operation identifier into the third region that identifies updating the data values for the second column.

20. The computer-readable storage medium of claim 19 , wherein the user-specified value is blank.

Continuity (4)
Continuation 15705174 · Sep 14, 2017
Continuation 15701381 · Sep 11, 2017
Continuation In Part 15345391 · Nov 7, 2016
Related Publication 20190042635A1 · Feb 7, 2019
Cited By (2)
US 12,443,856 US 12,455,863