small errors corrected

This commit is contained in:
Meik Hellmund 2024-05-27 21:56:40 +02:00
parent b3079a799e
commit 2ebd0803ae
3 changed files with 47 additions and 49 deletions

View File

@ -36,7 +36,7 @@ zahlreiche Varianten und Funktionen, das Folgende ist eine kleine Auswahl
- `flush(stdout)` leert Buffer
```julia
```{julia}
# aus dem ersten Beispielprogramm
function input(prompt = "Eingabe:")
@ -48,17 +48,17 @@ end
```
```julia
```{julia}
a = input("Bitte 2 Zahlen eingeben!")
```
```julia
```{julia}
av = split(a)
```
```julia
```{julia}
parse.(Int, av)
```
@ -116,33 +116,33 @@ Anzahl der minimal verwendeten Zeichen (wenn nötig, werden auch mehr genommen)
Zeit für Beispiele:
```julia
```{julia}
using Printf # Paket laden nicht vergessen!
```
```julia
```{julia}
@printf("|%s|", "Hallo") # string mit Platzhalter für String
```
```julia
```{julia}
@printf("|%10s|", "Hallo") # Minimallänge, rechtsbündig
```
```julia
```{julia}
@printf("|%-10s|", "Hallo") # linksbündig
```
```julia
```{julia}
@printf("|%3s|", "Hallo") # Längenangabe kann überschritten werden
# besser eine 'kaputt formatierte' Tabelle als falsche Werte!!
```
```julia
```{julia}
j = 123
k = 90019001
l = 3342678
@ -153,14 +153,14 @@ l = 3342678
`@printf` und `@sprintf` können wie alle Macros wie Funktionen aufgerufen werden:
```julia
```{julia}
@printf("%i %i", 22, j)
```
-- oder wie Macros, also ohne Funktionsklammern und ohne Komma:
```julia
```{julia}
@printf "%i %i" 22 j
```
@ -180,12 +180,12 @@ Ansonsten besteht die Argumentliste aus
`@sprintf` druckt nichts, sondern liefert den ausgefüllten formatierten String zurück:
```julia
```{julia}
str = @sprintf("x = %10.6f", π );
```
```julia
```{julia}
str
```
@ -197,19 +197,19 @@ Bedeutung des _Precision_-Wertes:
- `%g`-Format: max. Anzahl von ausgegebenen Ziffern (Vor- + Nachkommastellen)
```julia
```{julia}
x = 123456.7890123456
@printf("%20.4f %20.4e", x, x) # 4 Nachkommastellen
```
```julia
```{julia}
@printf("%20.7f %20.7e", x, x) # 7 Nachkommastellen
```
```julia
```{julia}
@printf("%20.7g %20.4g", x, x) # insgesamt 7 bzw. 4 Stellen
```
@ -234,7 +234,7 @@ Dateien werden
```
```julia
```{julia}
f = open("datei.txt", "w")
```
@ -244,27 +244,27 @@ f = open("datei.txt", "w")
```
```julia
```{julia}
println(f, " zweite Zeile")
```
```julia
```{julia}
close(f)
```
```julia
```{julia}
;cat datei.txt
```
```julia
```{julia}
f = open("datei.txt", "r")
```
```julia
```{julia}
n = 0
for i in readlines(f) # Lese zeilenweise
n += 1
@ -287,43 +287,43 @@ und viele andere mehr...
```julia
```{julia}
using DelimitedFiles
```
```julia
```{julia}
A = rand(200,3)
```
```julia
```{julia}
f = open("data2.txt", "w")
```
```julia
```{julia}
writedlm(f, A)
```
```julia
```{julia}
close(f)
```
```julia
```{julia}
;head data2.txt
```
```julia
```{julia}
B = readdlm("data2.txt")
```
```julia
```{julia}
# man kann open() auch als 1.Argument eine function(iostream) übergeben, die auf den stream
# angewendet wird, wonach der stream automatisch geschlosssen wird.
#
@ -342,12 +342,12 @@ end
```julia
```{julia}
using CSV, DataFrames, Downloads
```
```julia
```{julia}
# Wetterdaten von Westerland, s. https://dev.meteostat.net/bulk/hourly.html
@ -355,17 +355,17 @@ url = "https://bulk.meteostat.net/v2/hourly/10018.csv.gz"
```
```julia
```{julia}
http_response = Downloads.download(url)
```
```julia
```{julia}
file = CSV.File(http_response, header=false)
```
```julia
```{julia}
# https://dev.meteostat.net/bulk/hourly.html#endpoints
# Spalte 1 Datum
@ -381,45 +381,43 @@ df = DataFrame(file)
```
```julia
```{julia}
describe(df)
```
```julia
```{julia}
using StatsPlots
```
```julia
```{julia}
using Dates
```
```julia
```{julia}
# neue Spalte mit Sp.1 und 2 (date & time) kombiniert
df[!, :datetime] = DateTime.(df.Column1) .+ Hour.(df.Column2);
```
```julia
```{julia}
describe(df)
```
```julia
```{julia}
@df df plot(:datetime, :Column3)
```
```julia
```{julia}
@df df plot(:datetime, [:Column9, :Column6, :Column3],
xlims = (DateTime(2022,1,1), DateTime(2022,7,1)),
layout=(3,1), title=["Wind" "Regen" "Temp"], legend=:none)
```
```julia
```

View File

@ -55,7 +55,7 @@ cx = @. cos(2x^(1/2))
plot(x, [sx cx])
```
- Die Funktionen des _Plots.jl_-Paketes wie `plot(), scatter(), contour(), heatmap(),histogram(), bar(),...` usw. starten alle einen neuen Plot.
- Die Funktionen des _Plots.jl_-Paketes wie `plot(), scatter(), contour(), heatmap(), histogram(), bar(),...` usw. starten alle einen neuen Plot.
- Die Versionen `plot!(), scatter!(), contour!(), heatmap!(), histogram!(), bar!(),...` erweitern einen existierenden Plot:
```{julia}
@ -387,7 +387,7 @@ Der Datensatz ["Motor Trend Car Road Tests"](https://rdrr.io/r/datasets/mtcars.h
cars = dataset("datasets", "mtcars")
```
Wir brauchen für den Plot nur die beiden Spalten `cars.Model` und `cars.MPG`, den Benzinverbrauch in _Meilen pro Gallon_ (Mehr heißt sparsamer!)
Wir brauchen für den Plot nur die beiden Spalten `cars.Model` und `cars.MPG`, den Benzinverbrauch in _miles per gallon_ (Mehr heißt sparsamer!)
```{julia}
theme(:bright)

View File

@ -132,12 +132,12 @@ Allerdings wäre es sehr ineffektiv, diesen Container tatsächlich explizit anzu
Das Macro `@allocated` gibt aus, wieviel Bytes an Speicher bei der Auswertung eines Ausdrucks alloziert wurden.
```{julia}
@allocated [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
@allocated r = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
```
```{julia}
@allocated 1:20
@allocated r = 1:20
```