Matrixformules gebruiken in Google Spreadsheets

0
46

Begin 2023 introduceerde Google verschillende nieuwe functies voor Spreadsheets, waaronder acht voor het werken met arrays. Met deze functies kunt u een array omzetten in een rij of kolom, een nieuwe array maken van een rij of kolom of een huidige array toevoegen.

Met meer flexibiliteit voor het werken met arrays en verder gaan dan de standaard ARRAYFORMULA-functie, laten we eens kijken hoe we deze array-functies kunnen gebruiken met formules in Google Spreadsheets.

Inhoudsopgave

    Tip: Sommige van deze functies komen u misschien bekend voor als u ook Microsoft Excel gebruikt.

    Transformeer een array: TOROW en TOCOL

    Als u een array in uw dataset heeft die u wilt transformeren in een enkele rij of kolom, kunt u de functies TOROW en TOCOL gebruiken.

    De syntaxis voor elke functie is hetzelfde, TOROW(matrix, negeren, scannen) en TOCOL(matrix, negeren, scannen) waarbij alleen het eerste argument vereist is voor beide.

    • Array: de array die u wilt transformeren, geformatteerd als “A1:D4”.
    • Negeren: standaard worden er geen parameters genegeerd (0), maar u kunt 1 gebruiken om blanco's te negeren, 2 om fouten te negeren of 3 om blanco's en fouten te negeren.
    • Scannen: dit argument bepaalt hoe de waarden in de array moeten worden gelezen. De functie scant standaard per rij of met de waarde False, maar u kunt desgewenst True gebruiken om per kolom te scannen.

    Laten we een paar voorbeelden bekijken met de TOROW- en TOCOL-functies en hun formules.

    In dit eerste voorbeeld nemen we onze array A1 tot en met C3 en maken er een rij van met behulp van de standaardargumenten met deze formule:

    =TOROW(A1:C3) < /p>

    Zoals je kunt zien, staat de array nu op een rij. Omdat we het standaard scan-argument hebben gebruikt, leest de functie van links naar rechts (A, D, G), omlaag en vervolgens weer van links naar rechts (B, E, H) totdat het volledig is gescand per rij.

    Om de array kolomsgewijs te lezen in plaats van rij, kunnen we True gebruiken voor het scanargument. We laten het argument negeren leeg. Dit is de formule:

    =TOROW(A1:C3,,TRUE)

    Nu zie je de functie leest de array van boven naar beneden (A, B, C), van boven naar beneden (D, E, F) en van boven naar beneden (G, H, I).

    De TOCOL-functie werkt op dezelfde manier, maar transformeert de array naar een kolom. Gebruikmakend van hetzelfde bereik, A1 tot en met C3, is hier de formule met de standaardargumenten:

    =TOCOL(A1:C3)

    < /figuur>

    Nogmaals, met de standaardinstelling voor het scanargument leest de functie van links naar rechts en levert het resultaat als zodanig.

    Om de array per kolom te lezen in plaats van per rij, voegt u True in voor het scanargument als volgt:

    =TOCOL(A1:C3,,TRUE)

    Nu zie je dat de functie in plaats daarvan de array van boven naar beneden leest.

    Maak een nieuwe array van rijen of kolommen: CHOOSEROWS en CHOOSECOLS

    Misschien wilt u een nieuwe array maken van een bestaande. Hiermee kunt u een nieuw celbereik maken met alleen specifieke waarden van een ander. Hiervoor gebruik je de Google Spreadsheets-functies CHOOSEROWS en CHOOSECOLS.

    De syntaxis voor elke functie is vergelijkbaar, CHOOSEROWS (array, row_num, row_num_opt) en CHOOSECOLS (array, col_num, col_num_opt), waarbij de eerste twee argumenten voor beide vereist zijn.

    • Array: de bestaande array, geformatteerd als “A1:D4”.
    • Row_num of Col_num: Het nummer van de eerste rij of kolom die u wilt retourneren.
    • Row_num_opt of Col_num_opt: de getallen voor extra rijen of kolommen die u wilt retourneren. Google stelt voor dat u negatieve getallen gebruikt om rijen van onder naar boven of kolommen van rechts naar links te retourneren.

    Laten we een paar voorbeelden bekijken met CHOOSEROWS en CHOOSECOLS en hun formules.

    In dit eerste voorbeeld gebruiken we de array A1 tot en met B6. We willen de waarden in rij 1, 2 en 6 retourneren. Dit is de formule:

    =CHOOSEROWS(A1:B6,1,2,6)

    Zoals je kunt zien, hebben we die drie rijen ontvangen om onze nieuwe array te maken.

    Voor een ander voorbeeld gebruiken we dezelfde array. Deze keer willen we rijen 1, 2 en 6 retourneren, maar met 2 en 6 in omgekeerde volgorde. U kunt positieve of negatieve getallen gebruiken om hetzelfde resultaat te krijgen.

    Als u negatieve getallen gebruikt, gebruikt u deze formule:

    =CHOOSEROWS(A1:B6,1,-1,-5)

    Om uit te leggen: 1 is de eerste rij die moet worden geretourneerd, -1 is de tweede rij die moet worden geretourneerd, wat de eerste rij is die onderaan begint, en -5 is de vijfde rij rij vanaf de onderkant.

    Als u positieve getallen gebruikt, zou u deze formule gebruiken om hetzelfde resultaat te verkrijgen:

    =CHOOSEROWS(A1:B6,1,6,2)

    De functie CHOOSECOLS werkt op dezelfde manier, behalve je gebruikt het wanneer je een nieuwe array wilt maken van kolommen in plaats van rijen.

    Met behulp van de matrix A1 tot en met D6 kunnen we kolommen 1 (kolom A) en 4 (kolom D) retourneren met deze formule:

    =CHOOSECOLS(A1:D6,1,4 )

    Nu hebben we onze nieuwe array met alleen die twee kolommen.

    Als een ander voorbeeld gebruiken we dezelfde array die begint met kolom 4. Vervolgens voegen we kolommen 1 en 2 toe met 2 (kolom B) eerst. U kunt zowel positieve als negatieve getallen gebruiken:

    =CHOOSECOLS(A1:D6,4,2,1)

    =CHOOSECOLS(A1:D6,4,-3,-4)

    Zoals je kunt zien in de bovenstaande schermafbeelding, met de formules in de cellen in plaats van de formulebalk, krijgen we hetzelfde resultaat met beide opties.

    Opmerking: omdat Google voorstelt om negatieve getallen te gebruiken om de plaatsing van de resultaten om te keren, moet u hier rekening mee houden als u niet de juiste resultaten ontvangt met behulp van positieve getallen.

    Wrap om een ​​nieuwe array te maken: WRAPROWS en WRAPCOLS

    Als u een nieuwe array wilt maken van een bestaande, maar de kolommen of rijen omwikkelt met een bepaald aantal waarden in elke , kunt u de functies WRAPROWS en WRAPCOLS gebruiken.

    De syntaxis voor elke functie is hetzelfde, WRAPROWS (bereik, aantal, pad) en WRAPCOLS (bereik, aantal, pad), waarbij de eerste twee argumenten voor beide vereist zijn.

    • Bereik: het bestaande celbereik dat u wilt gebruiken voor een array, opgemaakt als “A1:D4”.
    • Aantal: het aantal cellen voor elke rij of kolom.
    • Pad: U kunt dit argument gebruiken om tekst of een enkele waarde in lege cellen te plaatsen. Dit vervangt de fout #N/A die u ontvangt voor de lege cellen. Plaats de tekst of waarde tussen aanhalingstekens.

    Laten we een paar voorbeelden bekijken met de functies WRAPROWS en WRAPCOLS en hun formules.

    In dit eerste voorbeeld gebruiken we het celbereik A1 tot en met E1. We maken een nieuwe array-omlooprij met drie waarden in elke rij. Dit is de formule:

    =WRAPROWS(A1:E1,3)

    Zoals u kunt zien, hebben we een nieuwe array met het juiste resultaat, drie waarden in elke rij. Omdat we een lege cel in de array hebben, wordt de fout #N/A weergegeven. Voor het volgende voorbeeld gebruiken we het pad-argument om de fout te vervangen door de tekst 'Geen'. Dit is de formule:

    =WRAPROWS(A1:E1,3,”None”)

    Nu kunnen we een woord zien in plaats van een Google Spreadsheets-fout.

    De functie WRAPCOLS doet hetzelfde door een nieuwe array te maken op basis van een bestaand celbereik, maar doet dit door kolommen in plaats van rijen om te wikkelen.

    Hier gebruiken we dezelfde array, A1 tot en met E3, waarbij kolommen worden omwikkeld met drie waarden in elke kolom:

    =WRAPCOLS(A1:E1,3)

    Net als het WRAPROWS-voorbeeld ontvangen we het juiste resultaat, maar ook een fout vanwege de lege cel. Met deze formule kunt u het pad-argument gebruiken om het woord “Empty” toe te voegen:

    =WRAPCOLS(A1:E1,3,”Empty”)

    Deze nieuwe array ziet er veel beter uit met een woord in plaats van de fout.

    Combineren om een ​​nieuwe array te maken: HSTACK en VSTACK

    Twee laatste functies die we zullen bekijken, zijn voor het toevoegen van arrays. Met HSTACK en VSTACK kunt u twee of meer celbereiken samenvoegen om één array te vormen, horizontaal of verticaal.

    De syntaxis voor elke functie is hetzelfde, HSTACK (bereik1, bereik2,…) en VSTACK (bereik1, bereik2,…), waarbij alleen het eerste argument vereist is. U gebruikt echter bijna altijd het tweede argument, dat een ander bereik combineert met het eerste.

    • Bereik1: het eerste celbereik dat u voor de array wilt gebruiken, opgemaakt als “A1:D4”.
    • Bereik2,…: het tweede celbereik dat u aan het eerste wilt toevoegen om de array te maken. U kunt meer dan twee celbereiken combineren.

    Laten we eens kijken naar enkele voorbeelden met HSTACK en VSTACK en hun formules.

    In dit eerste voorbeeld combineren we de bereiken A1 tot en met D2 met A3 tot en met D4 met behulp van deze formule:

    =HSTACK(A1:D2,A3:D4)

    U kunt onze gegevensbereiken gecombineerd zien om een ​​enkele horizontale array te vormen.

    Voor een voorbeeld van de VSTACK-functie combineren we drie reeksen. Met de volgende formule gebruiken we de bereiken A2 tot en met C4, A6 tot en met C8 en A10 tot en met C12:

    =VSTACK(A2:C4,A6:C8,A10:C12)

    < figuur class="aligncenter size-large">

    Nu hebben we één array met al onze gegevens met behulp van een formule in een enkele cel.

    Arrays gemakkelijk manipuleren

    Hoewel u ARRAYFORMULA in bepaalde situaties kunt gebruiken, zoals met de SUM-functie of ALS-functie, kunnen deze extra Google Spreadsheets-matrixformules u tijd besparen. Ze helpen u uw blad precies in te delen zoals u het wilt en met een enkele matrixformule.

    Voor meer tutorials zoals deze, maar met niet-matrixfuncties, kijk hoe u de AANTAL.ALS- of SUM.ALS-functie gebruikt in Google Spreadsheets.