Lekcja 4 - wczytywanie plików tekstowych

Transkrypt

Lekcja 4 - wczytywanie plików tekstowych
Wczytywanie plików tekstowych
Jednym z głównych zastosowań arkusza kalkulacyjnego w pracy inżyniera jest opracowywanie danych
pomiarowych lub obliczeniowych. Aby to jednak uczynić, trzeba wcześniej wczytać plik z danymi, najczęściej
zapisany w formacie tekstowym.
Rozróżnia się (nie tylko w programie MS Excel) dwa rodzaje plików tekstowych, zawierające dane:
• pliki, w których poszczególne dane rozdzielone są od siebie określonym znakiem, zwanym separatorem
lub ogranicznikiem.
Oto przykład pliku tego rodzaju:
W plikach, będących efektem działania programów obliczeniowych bądź też aparatury pomiarowej
najczęściej separatorem jest przecinek (natomiast znakiem dziesiętnym kropka!). W przypadku plików,
tworzonych w inny sposób, zgodnych z polskimi normami, separatorem jest zwykle średnik (a znakiem
dziesiętnym przecinek).
• pliki, w których dane znajdują się w oddzielnych kolumnach o określonej, stałej szerokości.
Oto przykład takiego pliku:
Poniżej przedstawiono kolejne kroki, które należy wykonać, aby poprawnie wczytać plik tekstowy do arkusza
programu MS Excel:
I. Dla pliku o danych rozdzielanych separatorem
1. Najpierw należy uruchomić program MS Excel, a dopiero z jego poziomu otworzyć plik, a nie
odwrotnie! Jest to związane z koniecznością kontrolowanego, a nie domyślnego, wczytywania plików
tekstowych.
Oczywiście robimy to przy pomocy opcji menu Plik/Otwórz (ewentualnie odpowiedniego narzędzia z
paska narzędzi), pamiętając o tym, aby w opcji Pliki typu wybrać Wszystkie pliki
UWAGA! Pliki tekstowe wczytywane do arkusza nie mogą być współdzielone między wielu
użytkowników co oznacza, że należy je skopiować do swoich folderów i na nich pracować!
2. W pierwszym kroku kreatora importu tekstu decydujemy, czy dane we wczytywanym pliku są
rozdzielone separatorami (ogranicznikami), czy też znajdują się w kolumnach o stałej szerokości.
Zwykle program prawidłowo rozpoznaje rodzaj pliku, jednak zdarzają się wyjątki. W dolnej części okna
widzimy podgląd pliku, gdzie na bieżąco możemy sprawdzić poprawność identyfikacji.
Jeżeli we wczytywanym pliku tekstowym znajdują się na początku wiersze opisowe (np. kto wykonał
pomiar, kiedy, jaką aparaturą itd.) możemy je pominąć, zaczynając import dopiero od tego wiersza, w
którym zaczynają się dane. Warto także spojrzeć na opcję Pochodzenie pliku, określające jego stronę
kodową – w naszych warunkach spotykane są Windows (ANSI), 852: Central European (DOS) i 1250:
Central European (Windows). Wszelkie inne strony kodowe są raczej egzotyczne, a niekiedy system
„gubi się” twierdząc, że np. nasz dokument jest w stronie kodowej Japanese, co prowadzi do pojawiania
się we wczytywanym tekście „dziwnych” symboli.
3. W kolejnym kroku decydujemy, co jest separatorem (ogranicznikiem), dzielącym dane we
wczytywanym tekście. Od tego, jaki separator wybierzemy, zależy rozlokowanie danych w komórkach.
Domyślnym separatorem jest Tabulator, jednak najczęściej (jak w naszym przykładzie) jest to
przecinek. Należy w związku z tym odznaczyć opcję Tabulator i zaznaczyć opcję Przecinek. W chwili
zaznaczenia separatora w podglądzie danych zobaczymy, jak będą one w takim przypadku
rozmieszczone w kolumnach – należy skonfrontować to, co widzimy z naszymi oczekiwaniami!
Podgląd danych musi pokazywać podział danych na logiczne kolumny!!!
Opcję Kolejne ograniczniki traktuj jako jeden stosujemy w przypadku, gdy np. ogranicznikiem
(separatorem) jest spacja, a między niektórymi danymi zamiast jednej występują dwie lub więcej spacji.
Przy pomocy opcji Kwalifikator tekstu określamy, w jaki sposób we wczytywanym pliku zaznaczane
są dane tekstowe (np. w cudzyłowach) – niestety, najczęściej w rzeczywistych plikach żadne
kwalifikatory nie są stosowane i opcję te można pozostawić bez zmian.
4. W kolejnym kroku decydujemy o typach danych w poszczególnych kolumnach. Dokonujemy tego
poprzez kliknięcie myszką w daną kolumnę na podglądzie i wybraniu odpowiedniego dla niej formatu
w opcji Format danych w kolumnie.
Domyślnym formatem wczytywanych kolumn danych jest format Ogólny co oznacza, że jeżeli tylko
będzie to możliwe, to wszystkie dane będą traktowane jako dane liczbowe (w szczególności kod
MAR12 w naszym przykładzie zostanie potraktowany jako zapis daty 12 marca).
Pomimo tego, że w zestawie formatów jest zawarty format Data, w rzeczywistości bardzo rzadko się
zdarza, aby data była zapisana w pliku w jednym z sześciu przedstawianych formatów. W efekcie
jedyne kolumny, których formaty tu ustawiamy, są to kolumny zawierające tekst (np. kod obserwatora)
– zapobiega to wspomnianej powyżej „zamianie” tekstu w datę.
Drugą niezwykle ważną opcję, dostępną w opisywanym oknie, uzyskamy naciskając przycisk
Zaawansowane.
Jak już niejednokrotnie wspominałem, domyślnym znakiem dziesiętnym w polskiej wersji systemu
operacyjnego MS Windows (a więc również w arkuszu kalkulacyjnym MS Office) jest przecinek,
natomiast w analizowanych plikach z danymi jest to często kropka (jak w opisywanym przykładzie).
Jeżeli stwierdzimy, że w naszym pliku znakiem dziesiętnym jest kropka, w oknie Zaawansowane
ustawienia importu tekstu w opcji Separator dziesiętny ustawiamy właśnie kropkę.
Jeżeli tego nie zrobimy, dane zostaną wczytane błędnie (liczby widoczne będą jako tekst) i nie będzie
można na nich wykonać żadnych działań ani stworzyć wykresów!
UWAGA! W wersji arkusza MS Excel, używanej w ramach ćwiczeń laboratorium komputerowego,
możliwe jest „naprawienie” w ten sposób źle wczytanego pliku poprzez „masową” zamianę wszystkich
kropek na przecinki (poprzez opcję menu Edycja/Zamień lub kombinację klawiszy Ctrl H).
5. W kolejnym kroku zobaczymy już nasze dane wczytane do arkusza kalkulacyjnego.
Oczywiście należałoby jeszcze „zająć się” kolumną Data – są w niej w tej chwili po prostu liczby (np.
308260112 w komórce B2). Sposób postępowania zależy od sposobu użytkowania tej kolumny w
przyszłości – jeśli ma ona tylko prezentować datę wykonania pomiaru (wizualnie), wystarczy ją tylko
sformatować na podobieństwo daty (w tym przykładzie 2003-08-26 01:12), co opisałem w Lekcji 2.
Jeżeli natomiast mam zamiar wykonywać obliczenia na zawartych w tej kolumnie datach, lub też ma
być ona argumentem wykresu, muszę przetworzyć ją na rzeczywistą datę, co opisałem w Lekcji 3.
[Dygresja: pisałem już wcześniej, że w systemie operacyjnym MS Windows, a więc również w arkuszu
MS Excel, każda data jest w rzeczywistości liczbą dni, która upłynęła od północy 1 stycznia 1900 r. Data
ta została wybrana tak, aby dla wydarzeń współczesnych liczba ta była zawsze dodatnia. We wczytanym
pliku w kolumnie A widoczny jest jeszcze inny format daty – JD (skrót od ang. Julian Date, czyli Data
Juliańska). JD jest to liczba dni, która upłynęła od południa 1 stycznia 4713 r. p.n.e., co zapewnia, że
jest ona dodatnia dla wszystkich dat historycznych]
II. Dla pliku o danych znajdujących się w kolumnach o stałej szerokości.
1. Analogicznie, jak w p. I.1, tym razem przykładowym plikiem jest Stachniewicz.txt
2. Analogicznie, jak w p. I.2, jednak tym razem wybieramy opcję Stała szerokość
3. W kolejnym kroku dzielimy dane (widoczne w Podglądzie danych) na kolumny. Proponowane pzrze
program podziały zwykle są poprawne, jednak nie zawsze. Jeżeli chcemy dodać nowy podział,
klikamy myszką w to miejsce na podglądzie, gdzie ma on wystąpić, jeżeli chcemy usunąć istniejący
podział, klikamy w niego podwójnie
Podgląd danych musi pokazywać podział danych na logiczne kolumny!!!
W powyższym przykładzie program błędnie wstawił podział kolumn w pozycji 64 i 70
(podzielone są zdania) – podziały te należy usunąć.
4. Analogicznie, jak w p. I.4
5. W kolejnym kroku zobaczymy już nasze dane wczytane do arkusza kalkulacyjnego.
Tym razem zarówno data jak i czas są wstawione w formacie rozpoznawalnym przez program i nie
wymagają korekty.
Niekiedy zachodzi konieczność pobrania do arkusza kalkulacyjnego danych tabelarycznych,
zapisanych w dokumencie MS Word. Najprostszą metodą jest zaznaczenie takiej tabeli w Wordzie,
schowanie do schowka (kombinacja klawiszy Ctrl C), a następnie wklejenie do arkusza programu
MS Excel (kombinacja klawiszy Ctrl V).