Programmieren mit statistischer Software
|
|
|
- Max Straub
- vor 8 Jahren
- Abrufe
Transkript
1 Programmieren mit statistischer Software Eva Endres, M.Sc. Institut für Statistik Ludwig-Maximilians-Universität München Vektorwertiges Programmieren
2 Programmieren ohne explizite Schleife I Vektorisierung > set.seed(1234) > x <- rnorm(5) > y <- runif(5) Vektorisierte Berechnung (implizite Schleife) > x + y [1] statt expliziter Schleife > z <- numeric(length(x)) > for ( i in seq(along.with = x) ) { + z[i] <- x[i] + y[i] > z [1] Vektorisierte Berechnungen sind kompakter besser lesbar Endres: Programmieren mit statistischer Software Sommersemester
3 Programmieren ohne explizite Schleife II meist schneller (bei größen Eingaben) > set.seed(1234) > x <- rnorm(10^6) > y <- runif(10^6) Implicit loop: interne Schleife, in Maschinencode programmiert (daher schneller) > system.time(x + y) user system elapsed Explicit loop: explizite Schleife, in R programmiert > z <- numeric(length(x)) > system.time(for ( i in seq(along.with = x) ) z[i] <- x[i] + y[i]) user system elapsed wannimmer möglich, sollte in R vektorisiert programmiert werden Endres: Programmieren mit statistischer Software Sommersemester
4 Programmieren ohne explizite Schleife III Vorsicht: in R werden Recycling rules verwendet! Wenn mit zwei Vektoren unterschiedlicher Länge gearbeitet wird, und die Länge des einen Vektors ein Vielfaches des anderen ist, dann wird der kürzere Vektor wiederholt. > c(1, 2, 3) + 1:6 [1] Nur wenn die Länge des einen Vektors kein Vielfaches des anderen ist, wird eine Warnmeldung ausgegeben. > c(1, 2, 3) + 1:5 > # Warning message: > # In c(1, 2, 3) + 1:5 : > # longer object length is not a multiple of shorter object length Endres: Programmieren mit statistischer Software Sommersemester
5 Implizite Schleifen I Operatoren >?Arithmetic >?Comparison > set.seed(1234) > x <- sample(100, 5) > ((x %% 2) == 0) [1] TRUE TRUE TRUE FALSE FALSE Statistische Maßzahlen > mean(x) # Summe als implizite Schleife, geteilt durch n [1] 55.6 > sum(x) / length(x) [1] 55.6 Endres: Programmieren mit statistischer Software Sommersemester
6 Implizite Schleifen II dasselbe mit expliziter Schleife > z <- 0 > for ( i in seq(along.with = x) ) { + z <- z + x[i] > z <- z / length(x) > z [1] 55.6 auch möglich für Datensätze - Zeilen- und Spalten-Summen (und Mittelwerte) > data("cars", package = "datasets") > #?cars > str(cars) 'data.frame': 50 obs. of 2 variables: $ speed: num $ dist : num > colmeans(cars) # implizite Schleife speed dist Endres: Programmieren mit statistischer Software Sommersemester
7 Implizite Schleifen III >?rowmeans >?rowsums >?colsums Subsets - Extraktion bzw. Ersetzungen von Teilmengen > set.seed(1234) > x <- letters[1:10] > ind <- sample(100, 10) Teilmenge der Buchstaben, für die ind gerade ist > x[ind %% 2 == 0] [1] "a" "b" "c" "h" > # bzw. mit which() > x[which(ind %% 2 == 0)] [1] "a" "b" "c" "h" Endres: Programmieren mit statistischer Software Sommersemester
8 Implizite Schleifen IV als explizite Schleife > z <- character() > for ( i in seq(along.with = x) ) { + if ( ind[i] %% 2 == 0 ) { + z <- c(z, x[i]) > z [1] "a" "b" "c" "h" oder mit ifelse (aber längerer Vektor mit zusätzlichen NA-Einträgen) > ifelse(test = ind %% 2 == 0, yes = x, no = NA) [1] "a" "b" "c" NA NA NA NA "h" NA NA Matrizenrechnung für Matrizen (zweidimensional) - matrix und Arrays (drei- und mehrdimensional) - array Endres: Programmieren mit statistischer Software Sommersemester
9 Implizite Schleifen V z.b. Matrixmultiplikation, Transponierung, Bilden von Teilmengen Transponieren mit impliziter Schleife > set.seed(1234) > A <- matrix(sample(10), ncol = 2) > A [,1] [,2] [1,] 2 4 [2,] 6 1 [3,] 5 7 [4,] 8 10 [5,] 9 3 > t(a) [,1] [,2] [,3] [,4] [,5] [1,] [2,] Endres: Programmieren mit statistischer Software Sommersemester
10 Implizite Schleifen VI Transponieren mit expliziter Schleife > n <- nrow(a) > m <- ncol(a) > At <- matrix(na, nrow = m, ncol = n) > for ( i in seq(length.out = n) ) { + for ( j in seq(length.out = m) ) { + At[j, i] <- A[i, j] > At [,1] [,2] [,3] [,4] [,5] [1,] [2,] Endres: Programmieren mit statistischer Software Sommersemester
11 Die apply-familie I hiermit kann man für alle weiteren Funktionen implizite Schleifen programmieren wiederholte Anwendung einer Funktion für alle Elemente eines Vektors alle Zeilen / Spalten einer Matrix alle Dimensionen eines Arrays Vorteile von apply gegenüber expliziter Schleife kompaktere Berechnung Parallelisierbar (mit Paket plyr) oft schneller Endres: Programmieren mit statistischer Software Sommersemester
12 Die apply-familie II Beispiele: Funktion angewendet auf eine Liste bzw. einen Vektor > ab <- function(x) { + if ( x < 10 ) { + "a" else { + "b" anwendbar für Skalare > ab(4) [1] "a" > ab(20) [1] "b" Endres: Programmieren mit statistischer Software Sommersemester
13 Die apply-familie III nicht korrekt anwendbar für Vektoren > ab(5:15) > # Warning message: > # In if (x < 10) { : > # the condition has length > 1 and only the first element will be used anwendbar für Vektoren mit > #?lapply > # gibt immer eine Liste zurueck > lapply(x=5:15, FUN=ab) > #?sapply > # versucht, das Ergebnis zu vereinfachen > # (zu einem Vektor, einer Matrix, einem Array) > sapply(x=5:15, FUN=ab) Endres: Programmieren mit statistischer Software Sommersemester
14 Die apply-familie IV Liste mit Ergebnissen von verschiedenen Durchgängen eines Experiments > set.seed(1234) > l <- list(exp1 = rnorm(100), + exp2 = rnorm(100), + exp3 = rnorm(100)) Mittelwerte (von Hand berechnet) > c(mean(l$exp1), + mean(l$exp2), + mean(l$exp3)) [1] mit expliziter Schleife > ms <- numeric(length = length(l)) > for ( i in seq(along.with = l) ) { + ms[i] <- mean(l[[i]]) > ms [1] Endres: Programmieren mit statistischer Software Sommersemester
15 Die apply-familie V einfacher mit > sapply(l, mean) exp1 exp2 exp Unterschied zwischen lapply und sapply > lapply(l, quantile) # gibt Liste zurueck > sapply(l, quantile) # gibt Matrix zurueck multivariate Version von sapply > #?mapply > mapply(rep, 1:4, times=4:1) > mapply(fun=quantile, l, probs=list(c(0,0.5,0.75,1), + c(0.2,0.4), c(0.1,0.3,0.6))) wiederholte Auswertung von Ausdrücken mit > #?replicate > replicate(n=5, expr=rnorm(10,0,1)) Endres: Programmieren mit statistischer Software Sommersemester
16 Die apply-familie VI Funktion angewendet auf eine Matrix, ein Array oder einen Datensatz > data("cars", package = "datasets") > > #?apply > # Maximum pro Zeile bzw. Spalte > apply(x=cars, MARGIN=1, FUN=which.max) > apply(x=cars, MARGIN=2, FUN=which.max) > # MARGIN=1 fuer Zeilen > # MARGIN=2 fuer Spalten > # MARGIN=c(1,2) fuer Zellen Endres: Programmieren mit statistischer Software Sommersemester
17 Anonyme Funktionen I Funktion ohne Name > function(x) { + x + 1 function(x) { x + 1 } Anwendung innerhalb von apply-befehlen > sapply(5:15, + function(x) { + if ( x < 10 ) { + "a" else { + "b" ) [1] "a" "a" "a" "a" "a" "b" "b" "b" "b" "b" "b" Endres: Programmieren mit statistischer Software Sommersemester
18 Apply-family gems I Vereinfachung des Ergebnisses bzw. Zugriff auf Teile des Ergebnisses > ds <- lapply(1:10, function(i) data.frame( + a = runif(4), b = gl(2, 2), c=runif(4))) > # ds <- replicate(10, data.frame( > # a = runif(4), b = gl(2, 2), c=runif(4)), > # simplify=false) # alternativ > # str(ds, 1) Vereinfachung des Ergebnisses - in ein großes Objekt > # do.call(, lapply()) Beispiel: Liste von Datensätzen in einen großen Datensatz umwandeln Endres: Programmieren mit statistischer Software Sommersemester
19 Apply-family gems II > #?do.call > d <- do.call(what=rbind, args=ds) > str(d) 'data.frame': 40 obs. of 3 variables: $ a: num $ b: Factor w/ 2 levels "1","2": $ c: num Zugriff auf Teile einer Liste > # lapply(, "[[", ) Beispiel: Spalte b für jeden Listeneintrag auswählen > bs <- lapply(ds, "[[", "b") > # lapply(ds, "[[", c("b","c")) # funktioniert nicht Endres: Programmieren mit statistischer Software Sommersemester
20 Apply-family gems III daher mit anonymen Funktionen > bs2 <- lapply(1:10, function(j) ds[[j]][,c("b","c")]) > bs3 <- lapply(1:10, function(j) ds[[j]][c("b","c")]) > > # Liste aus Data-frames > bs4 <- lapply(1:10, function(j) ds[[j]]["b"]) > # Liste aus Vektoren > bs5 <- lapply(1:10, function(j) ds[[j]][,"b"]) > # Liste aus Data-frames > bs6 <- lapply(1:10, function(j) ds[[j]][, "b", drop=false]) auch kompliziertere Operationen/Selektionen möglich > bs7 <- lapply(1:10, function(j) ds[[j]][2,"b"]) Endres: Programmieren mit statistischer Software Sommersemester
21 Funktionale Programmierung I Berechnungen als Auswertung von Funktionen higher-order functions - tun mindestens eines der beiden folgenden: nehmen eine oder mehrere Funktionen als Input geben eine Funktion zurück apply-funktionen sind higher-order functions die meisten anderen (wie mean()) sind first order functions weitere higher-order functions in R >?Map Endres: Programmieren mit statistischer Software Sommersemester
Erwin Grüner 15.12.2005
FB Psychologie Uni Marburg 15.12.2005 Themenübersicht Mit Hilfe der Funktionen runif(), rnorm() usw. kann man (Pseudo-) erzeugen. Darüber hinaus gibt es in R noch zwei weitere interessante Zufallsfunktionen:
> patienten<-data.frame( c(28,61,79,54,na,48), c(2,2,3,2,1,1), c("pillen","pillen","massage","gymnastik","massage","gymnastik"),
1 Der Datentyp factor in R 2 Beispieldatensatz > patienten
Statistische Software (R) Konstanten. Datentypen in R. Aufruf der Hilfeseiten zu grundlegende Operatoren und Funktionen: Paul Fink, M.Sc.
Grundlegende Operatoren und Funktionen Statistische Software (R) Paul Fink, M.Sc. Institut für Statistik Ludwig-Maximilians-Universität München Vektoren,, Listen und Data Frames Aufruf der Hilfeseiten
Datenaufbereitung, Grafische Datenanalyse
Datenaufbereitung, Grafische Datenanalyse R-Übung 2 Statistik III für Nebenfachstudierende LMU WS 2013/14 David Rügamer 6. & 13. November 2013 Nach einer Vorlage von Toni Hilger (WS 11/12) und Arne Kaldhusdal
Das einfachste Objekt ist ein Vektor, der aus mehreren Elementen besteht. Ein Vektor wird auf diese Weise erzeugt:
Die Grundlagen der R-Programmiersprache Jonathan Harrington 1. Vektoren 1.1 Elemente Es gibt verschiedene Sorten von Objekten in R, in denen Daten gespeichert werden können. In R können Objekte beliebige
Statistisches Programmieren
Statistisches Programmieren Session 1 1 Was ist R R ist eine interaktive, flexible Software-Umgebung in der statistische Analysen durchgeführt werden können. Zahlreiche statistische Funktionen und Prozeduren
Kapitel 1. R als Taschenrechner. Vorlesung Programmieren in statistischer Software: R Sommersemester 2009. Einleitung, Grundlagen
Vorlesung Programmieren in statistischer Software: R Sommersemester 2009 Kapitel 1, Christian Foliengestaltung von Martin Dörr Inhalt dieses Abschnitts 1 2 1.3 Braun, John W., Murdoch, Duncan J. A first
Prozess und Statistik. Einführung in. Eine R-Übersicht und Motivation R in der täglichen Arbeit zu nutzen. Günter Faes faes.de.
Einführung in Eine R-Übersicht und Motivation R in der täglichen Arbeit zu nutzen Seite: 1 Präsentationsthemen Was ist R? R Installation R Grundlagen Das Menü Die ersten Schritte R Daten-Objekte und deren
Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03
Reihungen Martin Wirsing in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 2 Ziele Die Datenstruktur der Reihungen verstehen: mathematisch und im Speicher Grundlegende Algorithmen auf Reihungen
Installation. Arbeiten mit der MATLAB-Entwicklungsumgebung. MATLAB als Taschenrechner mit Matrix- und Vektorrechnung.
Installation. Arbeiten mit der MATLAB-Entwicklungsumgebung. MATLAB als Taschenrechner mit Matrix- und Vektorrechnung. Die heutige Sitzung dient dem ersten Kennenlernen von MATLAB. Wir wollen MATLAB zuerst
Einfaches Datenmanagement in R
Einfaches Datenmanagement in R Achim Zeileis 2009-02-20 1 Daten einlesen Datensätze werden in R typischerweise als Objekte der Klasse "data.frame" dargestellt. In diesen entsprechen die Zeilen den Beobachtungen
Einführung in die statistische Sprache R
Einführung in die statistische Sprache R M. Comp. Sc. Stefan Faußer Oktober 28, 2008 Überblick basiert auf der kommerziellen Sprache S, Source Code von R ist frei verfügbar (GPL) + teilweise objektorientierter,
IDE Grundlagen Vektoren Matrizen Faktoren Dataframes Visualisierung Tips. Quick & dirty
Quick & dirty Eine pragmatische Einführung in R (Seminar Forschungsevaluation, Universität Wuppertal) Stephan Holtmeier kibit GmbH, [email protected] 31. Mai 2013 1 / 24 Unsere Entwicklungsumgebung:
Tag 9: Datenstrukturen
Tag 9: Datenstrukturen A) Datenstrukturen B) Cell Arrays C) Anwendungsbeispiel: Stimulation in einem psychophysikalischen Experiment A) Datenstrukturen Wenn man komplizierte Datenmengen verwalten möchte,
Einführung in MATLAB
Kapitel 4 Einführung in MATLAB 41 Allgemeines MATLAB ist eine kommerzielle mathematische Software zur Lösung mathematischer Probleme und zur graphischen Darstellung der Ergebnisse Die Verfahren in MATLAB
Felder, Rückblick Mehrdimensionale Felder. Programmieren in C
Übersicht Felder, Rückblick Mehrdimensionale Felder Rückblick Vereinbarung von Feldern: typ name [anzahl]; typ name = {e1, e2, e3,..., en} Die Adressierung von Feldelementen beginnt bei 0 Die korrekte
Anwendungssoftware III (MATLAB)
Anwendungssoftware III (MATLAB) Testvorbereitung Michael Liedlgruber Fachbereich Computerwissenschaften Universität Salzburg Sommersemester 2014 M. Liedlgruber Anwendungssoftware III (MATLAB) SS 2014 1
Erwin Grüner 09.02.2006
FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife
Versuchsplanung SoSe 2015 R - Lösung zu Übung 1 am 24.04.2015 Autor: Ludwig Bothmann
Versuchsplanung SoSe 2015 R - Lösung zu Übung 1 am 24.04.2015 Autor: Ludwig Bothmann Contents Aufgabe 1 1 b) Schätzer................................................. 3 c) Residuenquadratsummen........................................
Modul 122 VBA Scribt.docx
Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval
2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)
Analog zu Aufgabe 16.1 werden die Daten durch folgenden Befehl eingelesen: > kredit<-read.table("c:\\compaufg\\kredit.
Lösung 16.3 Analog zu Aufgabe 16.1 werden die Daten durch folgenden Befehl eingelesen: > kredit
Funktionales Programmieren in Python
Wintersemester 2008/2009 1 Funktionen sind Objekte 2 lambda Funktionen 3 apply 4 map 5 zip 6 filter 7 reduce 8 List Comprehension Funktionales Programmieren Wer nicht funktional programmiert, programmiert
5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)
5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!
Geometrie und Bedeutung: Kap 5
: Kap 5 21. November 2011 Übersicht Der Begriff des Vektors Ähnlichkeits Distanzfunktionen für Vektoren Skalarprodukt Eukidische Distanz im R n What are vectors I Domininic: Maryl: Dollar Po Euro Yen 6
Dr. Monika Meiler. Inhalt
Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-4 5.1.3 Kopieren eindimensionaler Felder... 5-6
Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!
Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist
Das Beste aus zwei Welten
: Das Beste aus zwei Welten Das Beste aus zwei Welten Aufruf von R Funktionen mit PROC IML KSFE 2012 08.03.2012 ist IT Dienstleister für Business Intelligence und Datenanalyse gibt es seit über 20 Jahren
P r o g r a m m a b l a u f s t e u e r u n g
Jede Programmiersprache braucht Konstrukte zur Steuerung des Programmablaufs. Grundsätzlich unterscheiden wir Verzweigungen und Schleifen. Schleifen dienen dazu, bestimmte Anweisungen wiederholt auszuführen,
2 Lösungen "Peptide de novo Sequencing"
Lösungen "Peptide de novo Sequencing". Algorithm : PeptideSequencingOnlySux Input: a spectrum M with array of masses M = {m, m,, m n }, Σ, µ : Σ R >0 Output: the peptide string of the spectrum begin peptide
Lösungen zum 3. Aufgabenblatt
SS, Lineare Algebra Die Lösungen wurden erstellt von: Isabel Voigt, Vanessa Lamm und Matthias Rehder Hinweis: Eine Liste der zur Bearbeitung verwendeten Literatur ist unter www.mathematiwelt.com aufrufbar.
Matlab Einführung. Tobias Wunner
Matlab Einführung Tobias Wunner 16. Oktober 2006 Vorteile Interpreter und interaktive Befehlseingabe Schnelles Implementieren von wissenschaftlichen Methoden Gutes Hilfesystem >> lookfor 'sum' TRACE Sum
Einführung in. Sven Hartenstein. Wintersemester 2007/2008. Friedrich-Schiller-Universität Jena. Einführung in (Sven Hartenstein) 1
Einführung in Sven Hartenstein Friedrich-Schiller-Universität Jena Wintersemester 2007/2008 Einführung in (Sven Hartenstein) 1 Gliederung 1 Was ist R? 2 Ein paar Beispiele 3 Konzepte 4 Rs Hilfe-System
Perl 6 OOP Was ist OOP? Du meinst OPP? Was ist OOP? Position Out Of Position OOP Mann Mit Ahnung Lies Das! Damian Sagt: Object-oriented programming... many opinions, theories, and even ideologies have
Einführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger [email protected] WiSe 2012/13 1 Wichtig... Mittags Pommes... Praktikum A 230 C 207 (Madeleine) F 112 F 113 (Kevin) E
C/C++ Programmierung
1 C/C++ Programmierung Verbunde, Reihungen, Zeiger Sebastian Hack Christoph Mallon (hack mallon)@cs.uni-sb.de Fachbereich Informatik Universität des Saarlandes Wintersemester 2009/2010 2 Typen 6.2.5 Primitive
Unterprogramme, Pointer und die Übergabe von Arrays
Unterprogramme, Pointer und die Übergabe von Arrays Unterprogramme Wie schon im Abschnitt über Funktionen erwähnt, versteht man unter einem Unterprogramm im engeren Sinn eine Prozedur, welche die Werte
Klausur zur Vorlesung Multivariate Verfahren, SS 2006 6 Kreditpunkte, 90 min
Klausur, Multivariate Verfahren, SS 2006, 6 Kreditpunkte, 90 min 1 Prof. Dr. Fred Böker 08.08.2006 Klausur zur Vorlesung Multivariate Verfahren, SS 2006 6 Kreditpunkte, 90 min Gesamtpunkte: 39 Aufgabe
Bearbeitungszeit: 120 Minuten. Kommentare kosten Zeit; kommentieren Sie ihr Programm nur da, wo der Code alleine nicht verständlich wäre.
Fakultät IV Elektrotechnik/Informatik Klausur Einführung in die Informatik I für Elektrotechniker Name:... Matr.-Nr.... Bearbeitungszeit: 120 Minuten Bewertung (bitte offenlassen : ) Aufgabe Punkte Erreichte
Wahrscheinlichkeitsrechnung und Mathematische Statistik für Informatiker Software Folien von JProf. Uwe Ligges. Jörg Rahnenführer WS 2013/2014
Wahrscheinlichkeitsrechnung und Mathematische Statistik für Informatiker Software Folien von JProf. Uwe Ligges Jörg Rahnenführer WS 2013/2014 1 Statistiksoftware (R) 1.0 Statistiksoftware R R http://www.r-project.org
Übersicht. Was ist R? Entstehung von R. Einführung in R - Eine Umgebung für statistisches Rechnen
Einführung in R - Eine Umgebung für statistisches Rechnen Übersicht Einleitung Ausdrücke Daten und Datentypen Kontrollstrukturen Illustration und Grafik Genomische Datenanalyse 2.Kapitel Was ist R? Entstehung
Probeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
Shock pulse measurement principle
Shock pulse measurement principle a [m/s²] 4.0 3.5 3.0 Roller bearing signals in 36 khz range Natural sensor frequency = 36 khz 2.5 2.0 1.5 1.0 0.5 0.0-0.5-1.0-1.5-2.0-2.5-3.0-3.5-4.0 350 360 370 380 390
Übersicht. Schleifen. Schleifeninvarianten. Referenztypen, Wrapperklassen und API. 9. November 2009 CoMa I WS 08/09 1/15
Übersicht Schleifen Schleifeninvarianten Referenztypen, Wrapperklassen und API CoMa I WS 08/09 1/15 CoMa I Programmierziele Linux bedienen Code umschreiben strukturierte Datentypen Anweisungen und Kontrollstrukturen
Modellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {
PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden.
PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden. Allgemein Ein Einzug sollte aus 4 Leerzeichen bestehen.
Oracle Datenbankprogrammierung mit PL/SQL Grundlagen
Oracle Datenbankprogrammierung mit PL/SQL Grundlagen Seminarunterlage Version: 12.05 Version 12.05 vom 29. Januar 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt-
Datenfelder (Arrays) Vektoren, Matrizen, Tabellen. Dr. Beatrice Amrhein
Datenfelder (Arrays) Vektoren, Matrizen, Tabellen Dr. Beatrice Amrhein Überblick Eindimensionale Arrays o Deklaration, Initialisierung, Zugriff Mehrdimensionale Arrays o Deklaration, Initialisierung, Zugriff
Excel Funktionen durch eigene Funktionen erweitern.
Excel Funktionen durch eigene Funktionen erweitern. Excel bietet eine große Anzahl an Funktionen für viele Anwendungsbereiche an. Doch es kommt hin und wieder vor, dass man die eine oder andere Funktion
FHZ. K20 Arrays. Lernziele. Hochschule Technik+Architektur Luzern Abteilung Informatik, Fach Programmieren. Inhalt
Inhalt 1. Einführung 2. Array-Komponenten von elementaren Datentypen 3. Array-Komponenten sind Objekte 4. Array als Parameter 5. Kopieren von Arrays 6. Beispiel 7. Vector versus Array Folie 1 Lernziele
Informationsverarbeitung im Bauwesen
V14 1 / 30 Informationsverarbeitung im Bauwesen Markus Uhlmann Institut für Hydromechanik WS 2009/2010 Bemerkung: Verweise auf zusätzliche Information zum Download erscheinen in dieser Farbe V14 2 / 30
Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein ([email protected].
Java Crashkurs Kim-Manuel Klein ([email protected]) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
Grundlagen der Informatik 2
Grundlagen der Informatik 2 Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik [email protected] Raum 2.202 Tel. 03943 / 659 338 1 Gliederung 1. Einführung
Programmieren in EViews
Programmieren in EViews Herbert Stocker Dezember 2008 Programme werden nicht im Workfile, sondern als eigenen Dateien mit der Erweiterung.prg gespeichert; d.h. Programmdateien müssen eigenständig geöffnet
Einführung in MATLAB zur Veranstaltung Einführung in die Numerik
Einführung in MATLAB zur Veranstaltung Einführung in die Numerik Christian Stohrer Mathematisches Institut der Universität Basel FS 2011 MATLAB Einführung zur Veranstaltung Einführung in die Numerik Bitte
Steuern des GSR-Interface mit QBasic
Steuern des GSR-Interface mit QBasic Erstellt von Jochen Sendler, Geschwister-Scholl-Realschule Mannheim Inhaltsverzeichnis 1. Die Programmiersprache QBasic 3 2. Starten von QBasic 3 3. Ansteuern einzelner
Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben
Technische Universität Kaiserslautern Prof Dr Sven O Krumke Dr Sabine Büttner MSc Marco Natale Praktische Mathematik: Lineare und Netzwerk-Optimierung (SS 2015) Praktikumsaufgaben Aufgabe 1 (Konvertieren
Programmieren in C. Rekursive Funktionen. Prof. Dr. Nikolaus Wulff
Programmieren in C Rekursive Funktionen Prof. Dr. Nikolaus Wulff Rekursive Funktionen Jede C Funktion besitzt ihren eigenen lokalen Satz an Variablen. Dies bietet ganze neue Möglichkeiten Funktionen zu
Übung zur Einführung in die empirische Mikroökonomik (Ökonometrie II) Einführung in STATA. Universität Bamberg. Professur für VWL, Sozialpolitik
Übung zur Einführung in die empirische Mikroökonomik (Ökonometrie II) Einführung in STATA Universität Bamberg Professur für VWL, Sozialpolitik Sommersemester 2005 Dipl.-Vw. Christoph Wunder () Einführung
Einführung in die Programmiersprache C
Einführung in die Programmiersprache C Marcel Arndt [email protected] Institut für Numerische Simulation Universität Bonn Der Anfang Ein einfaches Programm, das Hello World! ausgibt: #include
Empirische Softwaretechnik. Einführung in das Statistikpaket R?! Entwickler von R. nicht vergleichbar mit den üblichen Statistikprogrammen
Empirische Softwaretechnik Einführung in das Statistikpaket Prof. Dr. Walter F. Tichy Dr. Frank Padberg Sommersemester 2007 1 2 R?! nicht vergleichbar mit den üblichen Statistikprogrammen wie SAS oder
Datenbanksysteme SS 2007
Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9c: Datenbankapplikationen Architektur einer Web-Applikation mit Servlets, JSPs und JavaBeans
Anwendung von Geoinformatik: Entwicklung von Open Source Tools für die automatisierte Analyse von Geoinformationen
Anwendung von Geoinformatik: Entwicklung von Open Source Tools für die automatisierte Analyse von Geoinformationen Abschlussprojekt: Klassifizierung von High Definition Panoramabildern Bearbeitung: Johannes
1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik
Informatik I WS 2012/13 Tutorium zur Vorlesung 1. Alexander Zietlow [email protected] Wilhelm-Schickard-Institut für Informatik Eberhard Karls Universität Tübingen 11.02.2013 1. 2. 1.
Zusammenstellung der Befehle in R
C. Fesl: Übungen zur Angewandten Statistik Befehle in R 1 Zusammenstellung der Befehle in R Im folgenden wird der Programmcode immer in dieser Schrift angegeben. Wenn nicht anders angegeben, bezeichnet
Einführung in R. 1 Literatur und Software 1
Einführung in R Björn Böttcher Raum: C 247, Willersbau Sprechstunde: nach Vereinbarung Web: http://www.math.tu-dresden.de/ boettch/ Email: [email protected] Inhaltsverzeichnis 1 Literatur
Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?
Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum
INTELLIGENTE DATENANALYSE IN MATLAB
INTELLIGENTE DATENANALYSE IN MATLAB Einführung in MATLAB Überblick Was ist MATLAB? Abkürzung für matrix laboratory. Reines Numerikprogramm für das Rechnen mit großen Zahlenfeldern (arrays) bzw. Matrizen.
Dateneingabe über ein HTML-Formular in eine Datenbank:
Dateneingabe über ein HTML-Formular in eine Datenbank: Über ein Eingabeformular mit fünf Eingabefelder sollen Personaldaten in eine Datenbank gespeichert werden: Schritt 1: Erstellen des Eingabeformulars
Programmierung in Python
Programmierung in Python imperativ, objekt-orientiert dynamische Typisierung rapid prototyping Script-Sprache Funktionales und rekursives Programmieren P raktische Informatik 1, W S 2004/05, F olien P
VHDL Verhaltensmodellierung
VHDL Verhaltensmodellierung Dr.-Ing. Volkmar Sieh Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2013 VHDL Verhaltensmodellierung 1/18 2013-01-11 Inhalt
Datenmanagement in R: Eine Einführung
UNIVERSITÄT BASEL Frühjahrsemester 2012 WWZ, Abt. Quantitative Methoden 23. März 2012 Prof. Dr. Christian Kleiber Linda Walter Jean-Michel Benkert Datenmanagement in R: Eine Einführung Diese Einführung
Projektaufgaben Block 2
Kurs BZQ III - Stochastikpraktikum WS 2013/14 Humboldt-Universität zu Berlin Randolf Altmeyer Philip-Moritz Eckert Projektaufgaben Block 2 Abgabe: bis 10.12.2013 Zur Einstimmung (freiwillig, ohne Abgabe)
DAS EINSTEIGERSEMINAR PHP 5.3 LERNEN ÜBEN ANWENDEN. Oliver Leiss Jasmin Schmidt. 3. Auflage
DAS EINSTEIGERSEMINAR PHP 5.3 Oliver Leiss Jasmin Schmidt 3. Auflage LERNEN ÜBEN ANWENDEN Vorwort... 13 Einleitung... 15 Was ist PHP?... 15 PHP gezielt einsetzen... 16 Neuerungen in PHP 5.3... 16 Der Umgang
Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
1 Einführung in RStudio
Markus Burkhardt ([email protected]) Inhalt 1.1 Ziel... 1 1.2 Installation... 2 1.3 Nutzung von RStudio... 2 1.4 Ein neues Projekt... 3 1.5 Einlesen von Daten... 3 1.6 Einlesen
Grundlagen. Die Komponenten eines C Programms. Das erste Programm
Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen
Prozedurale Datenbank- Anwendungsprogrammierung
Idee: Erweiterung von SQL um Komponenten von prozeduralen Sprachen (Sequenz, bedingte Ausführung, Schleife) Bezeichnung: Prozedurale SQL-Erweiterung. In Oracle: PL/SQL, in Microsoft SQL Server: T-SQL.
Programmieren Lernen mit BYOB. Gerald Futschek 5. November 2012
Programmieren Lernen mit BYOB Informatiktag 2012 Gerald Futschek 5. November 2012 Erste Programmier Schritte in der Schule Sehr viele verschiedene Dinge zu lernen: Syntax und Semantik der Befehle, Algorithmen,
Tipps und Tricks für Matlab
Tipps und Tricks für Matlab J. Schweitzer Sommersemester 2012 Inhalt Matlab als Taschenrechner Datenformate M-files Schleifen und Abfragen 2D Plots Matlab als Taschenrechner Prompt Elementare Rechnungen
Umgang mit und Ersetzen von fehlenden Werten bei multivariaten Analysen
Umgang mit und Ersetzen von fehlenden Werten bei multivariaten Analysen Warum überhaupt Gedanken machen? Was fehlt, ist doch weg, oder? Allgegenwärtiges Problem in psychologischer Forschung Bringt Fehlerquellen
lineare-algeba.wxmx 1 / 7 Mathematik in wxmaxima www.mathematik-verstehen.de Haftendorn Dez 2010
lineare-algeba.wxmx / Lineare Algebra Mathematik in wxmaxima www.mathematik-verstehen.de Haftendorn Dez. Handling Achtung: Durch Anklicken der linken Zellmarkierung kann man die Abschnitte und auch einzelne
Eine Kurzanleitung zu Mathematica
MOSES Projekt, GL, Juni 2003 Eine Kurzanleitung zu Mathematica Wir geben im Folgenden eine sehr kurze Einführung in die Möglichkeiten, die das Computer Algebra System Mathematica bietet. Diese Datei selbst
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt
Softwareschnittstellen
P4.1. Gliederung Rechnerpraktikum zu Kapitel 4 Softwareschnittstellen Einleitung, Component Object Model (COM) Zugriff auf Microsoft Excel Zugriff auf MATLAB Zugriff auf CATIA Folie 1 P4.2. Einleitung
1.4.12 Sin-Funktion vgl. Cos-Funktion
.4. Sgn-Funktion Informatik. Semester 36 36.4.2 Sin-Funktion vgl. Cos-Funktion Informatik. Semester 37 37 .4.3 Sqr-Funktion Informatik. Semester 38 38.4.4 Tan-Funktion Informatik. Semester 39 39 .5 Konstanten
In der Computersprache C ist die Standardmethode zur Behandlung von Matrizen durch
Kapitel Matrizen in C++ In der Computersprache C ist die Standardmethode zur Behandlung von Matrizen durch 1 const int n=10; 3 double a[n][n]; gegeben. Allerdings gibt es bei dieser Methode eine Reihe
Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays
Dass Sie unter Access Daten in Tabellen speichern und gezielt darauf zugreifen können, wissen Sie als Access [basics]-leser schon längst. Aber was, wenn Sie nur ein paar gleichartige Daten zwischenspeichern
Objects First With Java A Practical Introduction Using BlueJ. Mehr über Vererbung. Exploring polymorphism 1.0
Objects First With Java A Practical Introduction Using BlueJ Mehr über Vererbung Exploring polymorphism 1.0 Zentrale Konzepte dieses Kapitels Methoden-Polymorphie statischer und dynamischer Typ Überschreiben
Maple-Skripte. A.1 Einleitung. A.2 Explizite Zweischritt-Runge-Kutta-Verfahren. Bei der Ausführung
A Maple-Skripte A.1 Einleitung Bei der Ausführung mechanischer Rechnungen können Computeralgebra-Programme sehr nützlich werden. Wenn man genau weiß, was eingesetzt, umgeformt, zusammengefaßt oder entwickelt
620.900 Propädeutikum zur Programmierung
620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt [email protected] Tel: 0463 / 2700-3516 Arrays Wiederholung (1/5) Array = GEORDNETE
