Programujeme v softwaru Statistica

Podobné dokumenty
Programujeme v softwaru Statistica

Programujeme v softwaru Statistica - příklady

Programujeme v softwaru Statistica

Programujeme v softwaru Statistica

Textové popisky. Typ dat

DUM 06 téma: Tvorba makra pomocí VBA

Typy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu

DUM 07 téma: Proměnné, konstanty a pohyb po buňkách ve VBA

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Vzorce. StatSoft. Vzorce. Kde všude se dá zadat vzorec

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox

Slučování tabulek. Sloučení dvou tabulek

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

3 Makra Příklad 4 Access Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker.

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

MS Excel makra a VBA

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

8 Třídy, objekty, metody, předávání argumentů metod

Předpovídejte snadno a rychle

Statistica Enterprise

MS SQL Server 2008 Management Studio Tutoriál

Formátování pomocí stylů

Manuální kroková regrese Newsletter Statistica ACADEMY

Zobrazení zdrojových dat u krabicového grafu

8 Makra Příklad 4 Excel 2007

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

JAK PROPOJIT R-KO a EXCEL aneb Aby se uživatel nasytil a statistik zůstal celý

3MA481 Propojení Accessu a Excelu David Hach

Test z programování v jazyce VBA v rámci předmětu Počítače II Vzorová zadání a vypracování

Omezení funkcionalit v softwaru STATISTICA

Postupy práce se šablonami IS MPP

Zadání: TÉMA: Zápis algoritmu, čtení textového souboru, porovnání řetězců.

Excel - databáze. Opakování. Soubor, který jsme upravovali. Upravený soubor. Hrubá mzda = počet kusů * Kč za kus B6=B4*B5

Příprava dat v softwaru Statistica

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

Zpracování chybějících dat a dat mimo rozsah

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech

Skripta ke školení. Základy VBA. vypracoval: Tomáš Herout. tel:

Tabulkový procesor otázka č.17

Generování dat. Generování pomocí funkcí

5 Přehled operátorů, příkazy, přetypování

1. Průběh funkce. 1. Nejjednodušší řešení

3 Makra Příklad 4 Access Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker.

Poslední nenulová číslice faktoriálu

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

Návod na používání Digitálního povodňového plánu povodňové komise

1. Téma 03 - Rozhodování

Tabulkový procesor. Základní rysy

IMPORT DAT DO DATABÁZE

10 Algoritmizace Příklad 2 Word 2007/ VBA

KAPITOLA 3 - ZPRACOVÁNÍ TEXTU

VISUAL BASIC. Práce se soubory

Stručný manuál k ovládání programu STATISTICA. Mgr. Petra Beranová

Webové stránky. 4. Tvorba základní HTML webové stránky. Datum vytvoření: str ánk y. Vytvořil: Petr Lerch.

Návod pro práci s SPSS

Visual Basic for Application

Základní popis Toolboxu MPSV nástroje

Soutěž: Nejméně kliknutí

Pole a kolekce. v C#, Javě a C++

Tvorba fotogalerie v HTML str.1

Vícerozměrná pole. Inicializace pole

Níže uvedená tabulka obsahuje technické údaje a omezení aplikace Excel (viz také článek Technické údaje a omezení aplikace Excel (2007).

MS Excel Základy maker. Operační program Vzdělávání pro konkurenceschopnost. Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU

for (int i = 0; i < sizeof(hodnoty) / sizeof(int); i++) { cout<<hodonoty[i]<< endl; } cin.get(); return 0; }

Vytvoření tabulky: V následujícím okně si editujete okno tabulky. Vyzkoušejte si viz podklad Cv_09_Podklad_tabulka.xls a Cv_09_Tabulka.dwg.

Pointery II. Jan Hnilica Počítačové modelování 17

Obsah Úvodem... 5 Co je to vlastně formulář... 6 Co je to šablona... 6 Jak se šablona uloží... 6 Jak souvisí formulář se šablonou...

MS Excel 2007 Kontingenční tabulky

MQL4 COURSE. By Coders guru -8- Proměnné

Hromadná korespondence

Tabulka obsluhovaná kódem VBA

Uživatelská příručka pro ředitele škol

Výukový materiál pro projekt Elektronická školička reg. č. CZ.1.07/1.3.05/ "Interaktivní DUMy"- interaktivity lze dosáhnout i v MS PowerPoint

Makro. PDF vytvořeno zkušební verzí pdffactory Pro

Obr. P1.1 Zadání úlohy v MS Excel

Makra. Orámování oblasti

6. Statistica (pokračování) Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová

Informační a komunikační technologie pro učební obory ME4 a SE4. Makra

Úvod...1 Instalace...1 Popis funkcí...2 Hlavní obrazovka...2 Menu...3 Práce s aplikací - příklad...5

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

1. Základní pojmy, používané v tomto manuálu. 2. Stránky

Ovládání Open Office.org Calc Ukládání dokumentu : Levým tlačítkem myši kliknete v menu na Soubor a pak na Uložit jako.

Vytvoření uživatelské šablony

Výčtový typ strana 67

C++ přetěžování funkcí a operátorů. Jan Hnilica Počítačové modelování 19

Hromadná korespondence

1 Tabulky Příklad 3 Access 2010

Informatika I. ení 5 - podpora

StatSoft Poznejte nástroj Reportovací tabulky

STATISTICA Téma 1. Práce s datovým souborem

Evidence objednávek pečiva

Kurz Databáze. Obsah. Formuláře. Práce s daty. Doc. Ing. Radim Farana, CSc.

Projekt Obrázek strana 135

Stručný manuál k ovládání programu STATISTICA. Mgr. Petra Beranová Ing. Miloš Uldrich

Záznam dat Úvod Záznam dat zahrnuje tři základní funkce: Záznam dat v prostředí třídy Záznam dat s MINDSTORMS NXT

Transkript:

Programujeme v softwaru Statistica díl čtvrtý Newsletter Statistica ACADEMY Téma: Programování, makra, skripty Typ článku: Návody Tento článek navazuje na sérii předchozích článků, ze kterých už víme, jak si napsat nebo zaznamenat makro Statistica. Dnes se zaměříme na úpravy vygenerovaných maker, ukážeme si v nich místa, která jsou vhodná pro úpravy, a taky si popíšeme důležité objekty, které se v makrech Statistica často vyskytují a jejichž znalost je povinná. Jak už víme z minulých článků, software Statistica nabízí možnost generování maker v jazyku SVB (Statistica Visual Basic). Makro by mělo fungovat již po vygenerování, ale obvykle funguje pouze pro danou situaci, pro kterou bylo vygenerováno. Problém může nastat později, pokud takové makro spustíme např. na souboru dat s jinou strukturou, než pro který bylo vygenerováno. Pojďme se tedy podívat na strukturu vygenerovaného makra, na kterém si ukážeme důležitá místa, vhodná pro úpravy. Úprava generovaných maker Makro vygenerujeme na ukázkovém souboru Adstudy.sta, z menu Soubor -> Otevřít příklady -> Datasets -> Adstudy.sta. Vytvoříme analýzu základních statistik, menu Statistiky -> Základní statistiky -> Popisné statistiky, zvolíme proměnné 3-6 (MEASURE01-MEASURE 04), a zobrazíme výsledek tlačítkem Výpočet. Makro SVB (Statistica Visual Basic) vygenerujeme přes pravé tlačítko na dolním panelu, kde běží minimalizovaná analýza -> Vytvořit makro. Všechny způsoby záznamu jsou popsány v jednom z předchozích článků. Vygenerované makro si pojmenujeme a necháme výchozí nastavení. Získáme následující kód:

2 Programujeme v softwaru Statistica (díl čtvrtý) Statistica ACADEMY (Únor 2016)

Zajímavý je hned druhý řádek procedury Main: Set newanalysis = Analysis (scbasicstatistics, ActiveInputDataSet) Zde, mimo definice typu analýzy (scbasicstatistics pro základní analýzy), definujeme zdroj dat, v tomto případě pomocí vlastnosti ActiveInputDataSet. Jedná se o vlastnost aplikace Statistica, která vrací aktuální tabulku (ta nejvíce nahoře v případě více současně otevřených tabulek). Pokud bychom si otevřeli jinou tabulku Statistica a makro opět spustili, bude vykonáno právě na této tabulce (předpokládá se, že naposledy otevřená tabulka bude nejvíce nahoře). Pokud budou v této tabulce k dispozici proměnné 3-6 odpovídajícího datového typu (v tomto případě číselná proměnná), makro by se mělo v pořádku vykonat i na těchto datech. Je však vhodnější si tabulku nadefinovat pevně, nejlépe použít tabulku uloženou v počítači. Upravené makro by potom vypadalo následovně: Dim Tabulka As Spreadsheet Set Tabulka =Spreadsheets.Open("C:\Program Files\Dell\Statistica 13\Examples\Datasets\Adstudy.sta") Dim newanalysis As Analysis Set newanalysis = Analysis (scbasicstatistics, Tabulka) Toto makro se bude vykonávat pouze na tabulce Adstudy.sta, uložené v adresáři s příklady Statistica. Jak už bylo naznačeno, další důležitou informací je volba proměnných. Obvykle se se jedná o vlastnost Variables nějaké analýzy. V našem případě je analýza deklarována jako oad2: oad2.variables = "3-6" Proměnné zadáváme jako textový řetězec, jednotlivé proměnné jsou odděleny mezerou. Můžeme použít i rozsah Od-Do, nebo kombinaci, např. 3 4-6. Lze také použít název proměnné, např. "MEASURE05 MEASURE09". Dále v makru vidíme spoustu řádků, které představují vesměs nastavení výchozích hodnot analýzy. Pokud bychom je smazali, makro by stále fungovalo a pro tyto smazané parametry by byly opět použity výchozí hodnoty. Makro by tedy mohlo vypadat následovně: 3 Programujeme v softwaru Statistica (díl čtvrtý) Statistica ACADEMY (Únor 2016)

Při spuštění redukovaného makra bychom dostali stejný výsledek, jako v předchozím případě. Když se podíváme na konec makra, objevíme další, neméně zajímavé řádky. Vlastnost analýzy Summary obvykle odpovídá v analýze tlačítku Výpočet. Tento řádek tedy spouští výpočet dané analýzy a výsledek ukládá do objektu ostadocs, který je typu StaDocuments. StaDocuments představuje kolekci dokumentů Statistica, kterými můžou být tabulky a grafy Statistica. Přístup k jednotlivým objektům kolekce je přes vlastnost Item(), kde v závorce uvádíme pořadový index objektu v kolekci. V našem příkladu si můžeme přes vlastnost kolekce Count (tedy ostadocs.count) zjistit, že kolekce obsahuje jeden objekt. A víme, že výstupem analýzy je tabulka. Můžeme si tedy tabulku z kolekce uložit do samostatné tabulky: Dim Vystup As Spreadsheet Set Vystup=oStaDocs.Item(1) Vystup.Visible=True Pozn.: Pozor na to, jak máme nastaven Option base, pokud by byl Option base 0, potom by byl první index v kolekci roven 0, tedy Set Vystup=oStaDocs.Item(0). Obvykle taky není nutné vlastnost Item uvádět a lze použít zkrácený zápis Vystup=oStaDocs(0). Vytáhnout si tabulku z kolekce je vhodné v případě, že bychom chtěli s výsledkovou tabulkou dále pracovat a použít ji např. v jiné analýze. Pokud bychom chtěli pouze zobrazit výsledek analýzy, potom není potřeba s objekty kolekce nic dělat. O vše se postará vlastnost, kterou nalezneme na dalším řádku našeho makra, a tou je RouteOutput. Jedná se o vlastnost analýzy (Analysis), jejíž pomocí zobrazíme celý obsah kolekce StaDocuments, reprezentující výstup analýzy. RouteOutput se řídí nastavením správce výstupů, a dle jeho nastavení budou výstupy směrovány do samostatných oken nebo společného pracovního sešitu. Výsledné makro tedy bude vypadat následovně: Po spuštění makra získáme výstup ve formě pracovního sešitu (pokud máme nastaveno umisťování výsledků ve správci výstupů na pracovní sešit) a jedné samostatné tabulky Statistica. 4 Programujeme v softwaru Statistica (díl čtvrtý) Statistica ACADEMY (Únor 2016)

Výše popsaný postup můžeme zobecnit na většinu analýz. Důležité je upravit zdroj dat, rozsah proměnných a eventuálně si z kolekce objektů výstupu umět konkrétní objekt uložit do samostatné proměnné (objektu). Takto nahranou a upravenou analýzu můžeme použít např. v cyklu pro opakovaný výpočet s obměnou určitých parametrů. Ukážeme si to na příkladu, kdy budeme Základní statistiky počítat postupně na proměnné 3-6. Použijeme k tomu naše finální makro z předchozího příkladu. Sub Main přejmenujeme na Sub Basics, do které budeme přenášet jeden parametr pořadové číslo proměnné: Sub Basics (Citac as Long) Nad touto procedurou vytvoříme novou proceduru Main (povinná pro každé makro SVB), ze které budeme postupně volat proceduru Sub Basics. Ve For cyklu, který bude probíhat od 3 do 6, tedy For i=3 to 6, budeme volat proceduru Basics, které předáme číslo proměnné, pro kterou budeme chtít vypočítat proceduru Basics. Všimněme si, jak jsme definovali v proceduře Basics, tedy kódu pro výpočet základních statistik, proměnné, pro které chceme výpočet provést: oad2.variables = CStr(Citac) Jelikož jsou proměnné v makru definovány textovým řetězcem, musíme použít konverzní funkci CStr pro převod čísla na text. Výsledné makro bude vypadat následovně: 5 Programujeme v softwaru Statistica (díl čtvrtý) Statistica ACADEMY (Únor 2016)

Výstupem budou 4 samostatné tabulky a jeden pracovní sešit (dle nastavení správce výstupů): Výše popsaný příklad asi nebude mít smysl používat v praxi, jelikož lze jednoduše spočítat základní statistiky pro více proměnných najednou. Měl zejména demonstrovat, jak lze dynamicky měnit parametry opakovaných analýz. Tabulky Statistica - Spreadsheets V tomto článku si ještě popíšeme jeden z nejzákladnějších objektů Statisticy, se kterým se budeme při psaní maker setkávat tím je tabulka Statistica, neboli Spreadsheet. Jedná se o objektovou proměnnou, jejíž třída je součástí základní knihovny Statist.exe. Obsahuje velkou řadu vlastností a funkcí, jejichž přehled je dostupný v prohlížeči objektů, třídě Spreadsheet: 6 Programujeme v softwaru Statistica (díl čtvrtý) Statistica ACADEMY (Únor 2016)

Proměnná, která uchovává objekt tabulky, se deklaruje příkazem: Dim Nazev_tabulky As Spreadsheet S takto nadeklarovanou tabulkou ale pracovat nemůžeme, jelikož se jedná o prázdný objekt, který je třeba inicializovat. Inicializaci můžeme provést již při deklaraci proměnné, a to za použití kouzelného slůvka New: Dim Nazev_tabulky As New Spreadsheet Takto získáme prázdnou tabulku s výchozími vlastnosti velikost 10x10, proměnné typu double, atd. Tabulku lze inicializovat i přiřazením již existující tabulky, např. výstupu nějaké analýzy, nebo otevřít tabulku z disku: Dim Tab As Spreadsheet Set Tab = Spreadsheets.Open("cesta_k_souboru_.sta") Spreadsheet je objektová proměnná a u té víme, že se hodnoty předávají odkazem, tzn. pokud pracujeme s nějakou tabulkou a tu přiřadíme jiné proměnné, nevytváříme kopii a pouze nové proměnné ukážeme místo v paměti počítače, kde se tabulka nachází. Jedná se ale stále o tu samou tabulku. Pokud tabulku v rámci nové proměnné upravíme, tyto změny se projeví i u tabulky původní proměnné, ze které jsme přiřazovali. Nejlépe to ukáže následující příklad: Vidíme, že po spuštění došlo ke změně v tabulce A, i když jsme ji inicializovali jako novou prázdnou tabulku. To proto, že v případě proměnné A i B se jedná tentýž objekt, na který obě proměnné odkazují (referují). Na to je třeba dát si pozor. 7 Programujeme v softwaru Statistica (díl čtvrtý) Statistica ACADEMY (Únor 2016)

Zde výčet nejdůležitějších vlastností a funkcí pro Spreadsheet: Vlastnosti: NumberOfCases vrací počet případů tabulky NumberOfVariables - vrací počet proměnných tabulky Value(CaseNo As Long, VarNo As Long) vrací/nastaví číselnou hodnotu buňky definované číslem případu a proměnné Text(CaseNo As Long, VarNo As Long) As String vrací textovou hodnotu buňky definované číslem případu a proměnné Name vrací/nastaví název tabulky Visible nastaví tabulku viditelnou. Výchozí hodnota je False, takže je doporučeno v případě potřeby změnit na True VariableName(VarNo As Long) vrací/nastaví název proměnné, definované jejím číslem Cells(Row As Long, Column As Long) nastaví kurzor na požadovanou buňku, zadanou číslem řádku a sloupce CellsRange(FirstRow As Long, FirstColumn As Long, LastRow As Long, LastColumn As Long) vybere obdélníkovou oblast buněk, zadanou počáteční (řádek x sloupec) a koncovou buňkou (řádek x sloupec) Saved nastaví tabulku jako uloženou, tedy jako by u ní neproběhly změny (u jejího názvu není hvězdička). Takou tabulku lze zavřít, aniž by se software dotázal, zda chceme změny uložit, což je při práci s makry výhodné Funkce: VariableNumber(Name As String) vrací číslo proměnné, definované jejím jménem SetSize(CaseAmount As Long, VariableAmount As Long) nastavení velikost tabulky na počet případů x počet proměnných SaveAs(Name As String, [Overwrite As Variant = 0]) uloží tabulku do zadaného umístění; volitelný parametr přepsat v případě existující tabulky AddCases(After As Long, HowMany As Long) přidá prázdné případy, definované počtem (HowMany) případů, které chceme přidat, za který případ (After) AddVariables(Name As String, After As Long, [HowMany As Variant], [Type As Variant], [Len As Variant], [MissingData As Variant], [Format As Variant], [LongName As Variant]) přidá prázdné proměnné, definované jménem, počtem případů za který případ a dalšími volitelnými parametry, jako typ, řetězec pro prázdná data a další Závěrem Generování maker je velmi užitečná funkce a ve spojení s drobnými úpravami můžeme dosáhnout efektu, který je někdy přes klasické nabídky nedosažitelný. Nabízí alternativu, která nemusí být pro všechny, ale své uplatnění si zajisté najde, zejména v oblastech komplexnějších analýz, kde si můžeme řadu činností ulehčit a zautomatizovat. Dell Information Management Software Group V Parku 2325/16, 148 00 Praha 4 8 Programujeme v softwaru Statistica (díl čtvrtý) Statistica ACADEMY (Únor 2016) t +420 233 325 006, e info@statistica.cz www.dell.cz/statsoft, www.statsoft.cz