Jak za pomocą arkusza kalkulacyjnego analizować dane zebrane np. z wywiadów indywidualnych.
Jest to alternatywa dla programów takich jak MAXQDA. Zamiast dedykowanego programu można wykorzystać do analizy danych arkusz kalkulacyjny.
Może być to Google Sheets lub Microsoft Excel. Do tego posłużą tabela i kilka oddzielnych arkuszy, w których będą gromadzone informacje.
Pokażę też, jak połączyć wszystkie elementy. Czyli jak zrobić tabelę, która będzie zbierała wszystkie wystąpienia tekstu do danego tagu/tagów. Mogą być np. dwa tagi dotyczące danego tekstu.
Działanie arkusza
Możemy wyświetlić odpowiedzi wybranego respondenta. Czyli np. potrzebujemy zobaczyć, co powiedział respondent nr 2?

Wybieramy respondenta nr 2 i widzimy tylko wypowiedzi tej osoby.
Możemy np. wyszukać wypowiedź w tekstach.

Możemy też użyć CTRL+F, jednak, że wtedy będzie szukać po wszystkich komórkach w arkuszu.
Możemy skorzystać z filtra i np. wpisać "praca" i zaznaczyć tylko te wypowiedzi, które mają w swoim tekście wyrażenia związane z pracą.
Możemy też filtrować po kodzie. Czyli np. tagi dotyczące tylko technologii.
Mamy poszczególnych respondentów i teksty dotyczące technologii.
W arkuszu Kody są zebrane wszystkie unikalne kody z dwóch kolumn Kod 1 i Kod 2. Możemy dzięki temu w szybki sposób zobaczyć listę kodów oraz sprawdzić, czy gdzieś nie ma literówki lub podobnie nazywających się kodów.
W arkuszu KodyTeksty umieszczone są w poziomie unikalne kody z kolumny Kod 1 i Kod 2 arkusza dane. Pod każdym kodem jest lista pasujących do niego tekstów.
Dane tekstowe można kopiować np. do Murala, jako karteczki. Z Murala do Google Sheets, jako komórki. Teksty w arkuszu dotyczące pokolenia Z pochodzą z Wikipedii.
Poniżej znajduje się film pokazujący, jak przygotować arkusz. Pod filmem dalsza część artykułu.
Przygotowanie arkusza Dane
Pokażę, jak zrobić od początku taki arkusz. Tworzę nowy. Mogę od razu nadać nazwę, np. pokolenie Z.
Wpisuję nagłówki: tabeli respondent, tekst, kod 1, kod 2, notatki.
Najlepiej przygotować arkusz w Google Chrome, ponieważ niektóre funkcje mogą nie działać w innych przeglądarkach. Taką funkcją jest obecnie np. Convert to table.
Wybieramy: Format -> Convert to table.
Wklejam przygotowane teksty. Przypisuję losowo respondentów Res-01, Res-02, Res-03 poprzez =RAND().
Wybieramy Data -> Sort range -> Advanced range sorting options. Wybieram kolumnę H, w której są liczby losowe. Tym sposobem powstała kolumna respondentów rozmieszczona losowo.
Wklejam je do tabeli (CTRL + C i CTRL + V). Mamy już wprowadzone wypowiedzi, mamy respondentów. Teraz dopisuję do nich kody.
Są tam też dłuższe teksty można, więc wybrać: format i zawijanie. Format -> Wrapping -> wrap.
Lista unikalnych tagów
Mamy już gotową tabelę z danymi. Jeszcze nadam nazwę dla arkusza Dane oraz dla tabeli np. PokolenieZ.
Kolejna rzecz to zrobienie listy wszystkich unikalnych kodów. Dzięki takiej liście mamy cały czas dostęp do tagów. Lista kodów posłuży później do budowania kolejnego arkusza łączącego tagi i teksty (arkusz TagiTeksty).
Tworzę kolejny arkusz, nazwę go Kody. Teraz będę chciał mieć na początku unikalną listę, czyli niepowtarzające się nazwy, które występują w kodzie pierwszym - kod 1. Do tego służy funkcja UNIQUE().
W A1 wpisujemy {codeprettify}=UNIQUE(Dane!C:C){/codeprettify}
Wybieramy zakres, czyli kolumna C gdzie jest Kod 1 w arkuszu Dane.
Teraz trzeba żeby tagi były pobierane z dwóch kolumn Kod 1 i Kod 2 (kolumna C i D arkusza Dane). Do tego służy funkcja VSTACK().
Umieszczamy VSTACK() w funkcji UNIQUE().
{codeprettify}=UNIQUE(VSTACK(Dane!C:C, Dane!D:D)){/codeprettify} 
Żeby nie było pustego miejsca (pustej komórki) w liście można użyć funkcji FILTER()
{codeprettify}=UNIQUE(VSTACK(filter(Dane!C:C,Dane!C:C<>""), filter(Dane!D:D, Dane!D:D<>""))){/codeprettify}
Teraz trzeba zrobić tak, żeby nie było jeszcze tych kodów - Kod 1 i Kod 2, które są nagłówkami tabeli.
Trzeba zrobić, żeby nie zaczynał od początku kolumny, tylko od drugiego wiersza. W przypadku Kod 1 od C2, dla Kod 2 od D2.
{codeprettify}=UNIQUE(VSTACK(filter(Dane!C2:C,Dane!C2:C<>""), filter(Dane!D2:D, Dane!D2:D<>""))){/codeprettify}
Dla wygody możemy listę z kodami posortować alfabetycznie.
Do sortowania jest funkcja SORT(). Bierzemy całe wyrażenie. Na początku dajemy SORT().
Funkcja w parametrach wymaga, po której kolumnie (1) oraz czy alfabetycznie rosnąco - TRUE.
{codeprettify}=SORT(UNIQUE(VSTACK(filter(Dane!C2:C, Dane!C2:C<>""),filter(Dane!D2:D, Dane!D2:D <>"" ))), 1, TRUE){/codeprettify}
Zebranie wszystkiego razem, czyli kody plus pasujące teksty. Arkusz KodyTeksty.
Teraz czas na ostatni arkusz, w którym będą kody i pasujące do nich teksty.
Tworzę kolejny arkusz, nazywam go "KodyTeksty". Przyda się formuła, która była wcześniej w arkuszu Kody.
{codeprettify}=SORT(UNIQUE(VSTACK(filter(Dane!C2:C, Dane!C2:C<>""),filter(Dane!D2:D, Dane!D2:D <>"" ))), 1, TRUE){/codeprettify}
Potrzebujemy, żeby lista kodów była w poziomie (nie w pionie jak w arkuszu Kody).
Do tego użyjemy TRANSPOSE().
{codeprettify}=TRANSPOSE(SORT(UNIQUE(VSTACK(filter(Dane!C2:C, Dane!C2:C<>""),filter(Dane!D2:D, Dane!D2:D <>"" ))), 1, TRUE)){/codeprettify}

Teraz będę pobierać nazwy poszczególnych tagów i szukać, które pasują do tych, które są w tabeli z arkusza Dane.
Dla każdego tagu, które są w pierwszym wierszu będziemy szukali, jakie są do nich teksty.
Czyli np. kontakty-społeczne i wyszukiwali, które teksty do nich pasują (kontakty-społeczne występujące w Kod 1 lub w Kod 2).
Czyli np. kontakty-społeczne i wyszukiwali, które teksty do nich pasują (kontakty-społeczne występujące w Kod 1 lub w Kod 2).
Najpierw zrobimy to tylko dla tej kolumny Kod 1 (kolumna C). Za pomocą funkcji FILTER().
{codeprettify}FILTER(Dane!$B:$B, Dane!$C:$C=A1){/codeprettify}
Na razie pojawią się tylko teksty, których tagi występują w kodzie pierwszym (kolumna Kod 1 arkusz Dane). Można formułę rozszerzyć, żeby obejmowała dwie kolumny Kod 1 i Kod 2.
Do połączenia filtrowania z dwóch kolumn służy „+”
Po wpisaniu zmienionej formuły dojdą nowe teksty do niektórych tagów.
Obecna formuła działa również tam, gdzie w wierszu 2 nie ma kodu – jest to błąd. Wyszukuje puste miejsce w arkuszu Dane w kolumnach Kod 1 i Kod 2 i wstawia listę tekstów. Żeby to zniwelować trzeba użyć funkcji IF().
{codeprettify}=IF(A1<>"", FILTER(Dane!$B:$B, (Dane!$C:$C=A1)+(Dane!$D:$D=A1)), ""){/codeprettify}
Jeżeli w kolumnie A znajduje się wartość różna od pustej to wykonaj filtrowanie. Jeżeli nie, to wstaw puste.
Moim zdaniem jest to dobre rozwiązanie do analizy danych. Nie tylko danych z wywiadów, lecz także innych rodzajów danych, które gdzieś zbieramy i chcemy w jakiś sposób przetworzyć. Rozwiązanie jest darmowe. Arkusz można współdzielić i wspólnie edytować w zespole.