I'm working with a very large dataset and want to parse out useful information, but I cannot filter this information since some data points are so similar to others. Is it possible to transpose unique data points in Google Sheets
Say I have a list:
A
B
C
D
But I want to transpose only A, B, and D. Is there a way I can do that?
try:
=TRANSPOSE(UNIQUE(FILTER(A2:A; A2:A<>"C"; A2:A<>"")))
to exclude multiple values try:
=TRANSPOSE(UNIQUE(FILTER(A2:A; NOT(REGEXMATCH(A2:A; "C|B|X")); A2:A<>"")))
note that regex is case sensitive
Related
i'm trying to transform data from a row only list to a row-column structure.
I got data in I:K and want to set the values from K to the corresponding cells in A:H where Date and Time Values from I & J have to match within A:H.
example sheet
Does anyone know how to do this with Google Sheet system functions?
Yes, it can be achieved by using sumifs formula, simple and straightforward, here is the formula:
=SUMIFS($I$2:$I$13,$G$2:$G$13,$A5,$H$2:$H$13,D$1)
And this is how the Gsheet look like, accept if helping you :)
I'm collecting data from a Google Form that allows the user to choose which language they'd like the survey to be in, and based on his/her answer, the Google Form will utilize branching to lead them to the questions in the language he/she chose. For example, if they choose 'English,' a question they will answer is 'Full Name,' while if they choose 'Español,' they will answer 'Nombre y apellido.'
This leads the spreadsheet to collect the data from those questions into two separate columns. Is there a way to set up the spreadsheet so it organizes the data from the same translated questions into columns? The form will be receiving data constantly. I've tried stacking the columns using this formula template: ={A2:A5;D2:D5}, but the formula simply moved cells whenever data was added from the Google Form. I am collecting multiple points of data in 6 different languages, and I'm really hoping there's a way to organize this data to make it much less cumbersome to wade through.
If you have any ideas, please let me know! I'll try whatever you've got. 😅 Thanks!
You can union the column values, using open ranges, and then filter out the empty values using =QUERY() or =FILTER().
This way you'll be effectively joining values from different columns as one.
For example if you wanted to join data of columns A, D and E, you could do:
Using QUERY
=QUERY({A2:A;D2:D;E2:E}, "select Col1 where Col1 is not null")
Using FILTER
=FILTER({A2:A;B2:B;E2:E}, {A2:A;B2:B;E2:E} <> "")
I am trying to sort Google Sheets data in columns.
Raw Data
Desired Output
I know that this can be offered with some time of QUERY function but I cannot get it to work exactly how I want. I have already read through this thread on Google Sheets and this thread on Excel.
I don't think query can do exactly this: it can aggregate data in a few ways, but not in the way of "take the values and arrange in a row". I would use unique and filter for this purpose. Assuming the input columns are A,B and the output columns are C, D,... the formulas would be
C2: =unique(A2:A) to return the team numbers without repetition
D2: =transpose(filter(B2:B, A2:A=C2)) to return the matching scores, transposed to become a row.
The formula in D2 needs to be copied/dragged down the D column.
I wrote a =QUERY formula in Google spreadsheet. However I would like to copy not only the values of the cells but also the embedded links from the range of cells I am performing the query on. This is what I wrote:
=QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())")
There must be a way to tell the query to bring the URL as well along the content of the cells.
The query function only supports certain data types:
Supported data types are string, number, boolean, date, datetime and timeofday.
It doesn't handle other things one might embed into a spreadsheet, such as images or hyperlinks. (Hyperlinks are coerced to strings.) After all, the query language is not something Sheets-specific, it has its own data models that interact with Sheets only to an extent.
A solution is to use filter instead of query, if possible. It can do many of the things that query does. For example,
=QUERY(Tab!6:1963,"select C where (E='Major' and D >= now())")
can be replaced by
=filter(Tab!C6:C1963, (Tab!E6:E1963="Major") * (Tab!E6:E1963 >= now()))
which will return the links as expected. (And even images inserted with =image() if you got them.) The multiplication operator is logical and in the filter formula.
I know this is three years later, but I ran into this issue and my query would have converted to a complicated nest of FILTER and SORT functions. So I ended up doing something like this: ARRAYFORMULA(VLOOKUP(QUERY('Tab'!6:1963,"select C where (E='Major' and D >= now())"),C:C,1,FALSE))
Which worked.
Often this question comes into play with IMPORTRANGE. And Google's official answer does not really help (i.e. QUERY only works with strings, etc.). It is possible to give the filter range as an imported range, too, then it works:
=FILTER(IMPORTRANGE("XXX","Data!A1:A),
IMPORTRANGE("XXX","Data!B1:B")>0)
where column A is the data you want to import and column B is the filter
I am trying to import multiple sheets in one Google Sheet into another Google workbook. I can get ImportRange to work for one sheet but how do I use it for multiple sheets, or alternatively, how do I combine multiple ImportSheets in one column?
=unique(
importrange("https://docs.google.com/spreadsheets/d/...",
"'Kramerville KH'!d5:o1000"))
I want to be able to add another range to that, e.g. 'Emalahleni KH'!d5: o1000.
Use formula:
={unique(importrange("link...","'Sheet1'!d5:o1000"));
unique(importrange("link...","'Sheet2'!d5:o1000"))}
The result is two imports one behind another, see more info here.
There's no better way to do this. Alternative is to combine formula as text and then convert string into furmula using script. See how in this question.
Although the existing answer has been accepted the question appears to require exclusion of duplicates not only from within each range but also across ranges:
=unique({unique(importrange(" l i n k ","'Kramerville KH'!d5:o1000"));unique(importrange(" l i n k ","'Emalahleni KH'!d5:o1000"))})