pick – Skript- och diagramfunktion
Funktionen pick returnerar det n:te uttrycket i listan.
Syntax:
pick(n, expr1[ , expr2,...exprN])
Returnerad datatyp: dual
Argument | Beskrivning |
---|---|
n | n är ett heltal mellan 1 och N. |
Exempel | Resultat |
---|---|
pick( N, 'A','B',4, 6 ) | returnerar B om N = 2 returnerar 4 om N = 3 |
Exempel – Tilldela etiketter till produkter med hjälp av pick
Översikt
En datauppsättning innehåller produktdata. Du vill tilldela kategorietiketter till produkter baserat på kategorikoden.
Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.
Laddningsskriptet innehåller:
En datauppsättning som läses in i en datatabell som heter Example.
Följande fält i datatabellen:
ProductID
ProductName
CategoryCode
Laddningsskript
Example:
LOAD * INLINE [
ProductID, ProductName, CategoryCode
1, "Laptop", 1
2, "Headphones", 2
3, "Printer", 3
4, "Smartphone", 1
5, "Tablet", 1
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
ProductID
ProductName
CategoryCode
Skapa följande mått:
=Pick(CategoryCode, 'Electronics', 'Accessories', 'Office Equipment'), för att returnera ett giltigt uttryck från listan.
ProductID | ProductName | CategoryCode | Pick(CategoryCode, 'Electronics', 'Accessories', 'Office Equipment') |
---|---|---|---|
1 | Laptop | 1 | Electronics |
2 | Headphone | 2 | Accessories |
3 | Printer | 3 | Office Equipment |
4 | Smartphone | 1 | Electronics |
5 | Tablet | 1 | Electronics |
Funktionen pick returnerar en lista med värden som är associerade med motsvarande index från det numeriska fältet CategoryCode. Till exempel är etiketten Electronics den första parametern i funktionen och returneras för alla produkter med CategoryCode 1.
Exempel – Tilldela etiketter till regioner med hjälp av pick
Översikt
En datauppsättning innehåller lands- och regionkoder. Du vill tilldela regionetiketter till länder baserat på regionkoden.
Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.
Laddningsskriptet innehåller:
En datauppsättning som läses in i en datatabell som heter Example.
Följande fält i datatabellen:
Country
RegionCode
Laddningsskript
Example:
LOAD * INLINE [
Country, RegionCode
"USA", 1
"Canada", 1
"Germany", 2
"Japan", 3
"Australia", 4
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
Country
RegionCode
Skapa följande mått:
=Pick(RegionCode, 'North America', 'Europe', 'Asia', 'Australia'), för att returnera ett giltigt objekt från listan.
Country | RegionCode | Pick(RegionCode, 'North America', 'Europe', 'Asia', 'Australia') |
---|---|---|
Australia | 4 | Australia |
Canada | 1 | North America |
Germany | 2 | Europe |
Japan | 3 | Asia |
USA | 1 | North America |
Funktionen pick returnerar en lista med värden som är associerade med motsvarande index från det numeriska fältet RegionCode. Till exempel är etiketten North America den första parametern i funktionen och returneras för alla länder med RegionCode 1.
Exempel – Kombination av pick och match för att översätta listor med alternativa textmatchningar
Översikt
Detta avancerade scenario beskriver hur man effektivt använder en kombination av funktionerna pick och match för att mappa textmatchningar in-line. I programmeringstermer har detta ett liknande syfte som en Case-sats. Scenariot utforskar denna funktionalitet genom att mappa landsnamn till regionekvivalenta namn och samtidigt tillhandahålla ett standardvärde för Region för alla tidigare ej mappade Country-namn.
Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.
Laddningsskriptet innehåller:
En datauppsättning som läses in i en datatabell som heter Countries.
Datatabellen har ett fält som heter Country.
Laddningsskript
Countries:
LOAD * INLINE [
Country
"USA"
"Canada"
"Germany"
"Japan"
"Australia"
"South Africa"
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
Country
RegionCode
Skapa följande mått:
=Pick(1+match(Country,'USA','Canada','Germany','Japan','Australia'), 'Unmapped', 'North America', 'North America', 'Europe', 'Asia', 'Australia')
match-funktionen returnerar indexmatchningen av de kommaseparerade alternativen som anges, med början från 1 = ‘USA’, 2 = ‘Canada’ och så vidare. Om ingen motsvarighet påträffas, returneras noll. Detta resultat ökas sedan med 1 och matas in i funktionen pick, så att 1 = default value om ingen matchning hittas, 2 = ‘USA’, 3 = ‘Canada’ och så vidare.
Denna kombination av funktionsanropen Match och Pick kommer sedan att avkoda de matchande Country-namnen till ett motsvarande Region-namn. Alla omappade Country-värden kommer att returnera standardvärdet för Region, Unmapped.
Country | Pick(1+match(Country,'USA','Canada','Germany','Japan','Australia'), 'Unmapped', 'North America', 'North America', 'Europe', 'Asia', 'Australia') |
---|---|
Australia | Australia |
Canada | North America |
Germany | Europe |
Japan | Asia |
South Africa | Unmapped |
USA | North America |