# TextCount — funkcja wykresu

Funkcja TextCount() służy do agregowania liczby nieliczbowych wartości pól w poszczególnych wymiarach wykresu.

Składnia:

TextCount({[SetExpression] [DISTINCT] [TOTAL [&lt;fld {,fld}&gt;]]} expr)

Typ zwracanych danych: liczba całkowita

Argumenty

| Argument | Opis |
| --- | --- |
| expr | Wyrażenie lub pole zawierające mierzone dane. |
| SetExpression | Funkcja agregacji będzie domyślnie dokonywać agregacji na zbiorze możliwych wierszy zdefiniowanym przez selekcję. Alternatywny zestaw wierszy można zdefiniować za pomocą wyrażenia analizy zestawów. |
| DISTINCT | Jeśli przed argumentami funkcji występuje słowo DISTINCT, wówczas duplikaty wynikające z wyników obliczenia argumentów funkcji są pomijane. |
| TOTAL | Jeśli słowo TOTAL występuje przed argumentami funkcji, wówczas obliczenie jest wykonywane względem wszystkich możliwych wartości z uwzględnieniem bieżących selekcji, nie tylko tych należących do bieżącej wartości wymiaru, to znaczy z pominięciem wymiarów wykresu.<br><br>Korzystając z polecenia TOTAL [&lt;fld {.fld}&gt;], gdzie po kwalifikatorze TOTAL podana jest lista nazw pól stanowiących podzbiór zmiennych wymiarów wykresu, można utworzyć podzbiór wszystkich możliwych wartości.<br><br>[Określenie zakresu agregacji](https://help.qlik.com/pl-PL/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

Przykład: wyrażenia wykresu

| Przykład | Wynik |
| --- | --- |
| `TextCount(Product)` | Zwraca liczbę nazw produktów, które mają wartości tekstowe. |
| `TextCount(OrderNumber)` | Zwraca liczbę wierszy w polu `OrderNumber`, które mają wartości tekstowe.<br><br>Informacja„0” liczy się jako wartość, a nie jako pusta komórka. Jeśli jednak agregacja miary dla pewnego wymiaru da wynik 0, wymiar ten nie będzie uwzględniany na wykresach. Puste komórki są traktowane jako nietekstowe i nie są zliczane przez funkcję `TextCount`. |
| `TextCount (DISTINCT Product)/Count(Product)` | Zlicza wszystkie odrębne wartości tekstowe `Product` i dzieli ich liczbę przez łączną liczbę wartości w `Product`. |

## Przykład — podstawy TextCount

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/CounterAggregationFunctions/textcount.htm)

#### Wyrażenie wykresu

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych załadowany do tabeli o nazwie `Example`.

* Tabela zawiera następujące pola:

  * `Customer`

  * `Product`

  * `OrderNumber`

Skrypt ładowania

```
Set NULLINTERPRET = ' ';
Example:
LOAD * inline [
Customer|Product|OrderNumber
Astrida|AA|1
Astrida|AA|7
Astrida|BB|4
Betacab|CC|6
Betacab|AA|5
Betacab|BB|
Canutility|AA|
Canutility|CC|
Divadip|CC|2
Divadip|DD|3
](delimiter is '|');
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj następujące miary:

* `=TextCount(Product)` w celu zwrócenia liczby nazw produktów, które mają wartości tekstowe.

* `=TextCount(OrderNumber)` w celu obliczenia liczbę numerów zamówień, które są wartościami tekstowymi.

* `=TextCount(DISTINCT Product)/Count(Product)` w celu obliczenia wszystkich odrębnych wartości tekstowych `Product` i podzielenia ich liczby przez łączną liczbę wartości w `Product`.

Results table

| TextCount(Product) | TextCount(OrderNumber) | TextCount(DISTINCT Product)/Count(Product) |
| --- | --- | --- |
| 10 | 3 | 0.4 |

Pierwsza miara zwraca `10`, ponieważ wszystkie dziesięć rekordów w `Product` to tekst.

Druga miara zwraca `3`, ponieważ puste komórki są traktowane jako tekst i zliczane. Za pomocą tego typu miary zazwyczaj sprawdza się, czy w polach liczbowych występują jakiekolwiek wartości tekstowe lub puste.

Trzecia miara zwraca `0.4`. Wynik oblicza się, dzieląc liczbę wszystkich odrębnych wartości tekstowych `Product` (`4` przez łączną liczbę wartości w `Product` (`10`).

## Przykład — zastosowanie TextCount

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/CounterAggregationFunctions/textcount.htm)

#### Wyrażenie wykresu

Przegląd

Zestaw danych zawiera dane odpowiedzi na ankiety z reklamacjami i ogólnymi informacjami zwrotnymi w podziale na produkty. Przeglądane mają być tylko odpowiedzi z wartościami tekstowymi.

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych załadowany do tabeli o nazwie `Example`.

* Tabela zawiera następujące pola:

  * `CustomerID`

  * `ProductPurchased`

  * `Complaint`

  * `Feedback`

Skrypt ładowania

```
Set NullInterpret = '';
Example:
Load * Inline [
CustomerID, ProductPurchased, Complaint, Feedback
1, Laptop, Slow performance, "The laptop is slow, poor battery, slow graphics"
2, Mobile, Heating issue, "Mobile heats up, average camera"
3, Laptop, Battery problem, "Battery not working, slow to charge"
4, Tablet, Screen issue, "Screen is broken, unresponsive touch"
5, Mobile, No issues, "Excellent performance"
6, Mobile, 123, "123"
7, Laptop, ,
8, Tablet, Warranty expired,
9, Mobile, , "Contact customer service"
];
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* `ProductPurchased`

Utwórz następujące miary:

* `=TextCount(ProductPurchased)` w celu obliczenia liczby nazw produktów z wartościami nieliczbowymi.

* `=TextCount(Complaint)` w celu obliczenia liczby reklamacji z wartościami nieliczbowymi.

* `=TextCount(Feedback)` w celu obliczenia liczby wartości informacji zwrotnych z wartościami nieliczbowymi.

Results table

| ProductPurchased | TextCount(ProductPurchased) | TextCount(Complaint) | TextCount(Feedback) |
| --- | --- | --- | --- |
| Laptop | 3 | 2 | 2 |
| Mobile | 4 | 2 | 3 |
| Tablet | 2 | 2 | 1 |

Wyniki pokazują, że dla produktu `Laptop` istnieją `3` rekordy, z których `2` mają reklamacje, a `2` informacje zwrotne. Podobnie w przypadku produktu `Mobile`, są `4` rekordy, w tym `2` reklamacje i `3` informacje zwrotne. Wartości liczbowe lub wartości puste nie są liczone, ponieważ oczekuje się, że pola `ProductPurchased`, `Complaint` i `Feedback` są wartościami tekstowymi.