DataFrame – Zeilen/Spalten

Quelle: https://www.freecodecamp.org/news/how-to-work-with-data-frames-and-csv-files-in-r/

Arbeitsordner definieren

getwd()
setwd("C:\home\kurse\r")

Einlesen der CSV-Datei

data <- read.csv('spyout-test.txt', sep="\t")

anzeigen DataFrame

> data
test q1 q2 q3 q4
1    a  2  3  4  5
2    b  5  4  3  2
3    c  6  4  3  2
4    d  5  4  2  5
5    e  5  5  3  1
6    f  1  4  5  2
7    g  7  1  7  7
8    h  1  8  1  1
9    i 10 10  8  8

Anzahl Zeilen

> nrow(data)
[1] 9

Anzahl Spalten

> ncol(data)
[1] 5

Informationen zum Dataframe

> str(data)
'data.frame':   9 obs. of  5 variables:
$ test: chr  "a" "b" "c" "d" ...
$ q1  : int  2 5 6 5 5 1 7 1 10
$ q2  : int  3 4 4 4 5 4 1 8 10
$ q3  : int  4 3 3 2 3 5 7 1 8
$ q4  : int  5 2 2 5 1 2 7 1 8

Daten der 4. Zeile

> # Was steht in Zeile 3 (Index beginnt mit 1 und nicht mit 0 wie in Python)
> data[3,]
test q1 q2 q3 q4
3    c  6  4  3  2

Werte der letzten Spalte

> data[,5]
[1] 5 2 2 5 1 2 7 1 8

Zugriff auf die 7 der letzten Spalte

> data[7,5]
[1] 7

Werte der letzten Spalte

> data["q4"]
   q4
1  5
2  2
3  2
4  5
5  1
6  2
7  7
8  1
9  8

Letzte Spalte zu einem Vektor wandeln

> data$q4
[1] 5 2 2 5 1 2 7 1 8
# alternativ
> data[['q4']]
[1] 5 2 2 5 1 2 7 1 8

Filtern

> data$q4 > 5
[1] FALSE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE  TRUE
> # besser
> data[data$q4 > 5,]
test q1 q2 q3 q4
7    g  7  1  7  7
9    i 10 10  8  8
>
> data[data$q4 > 5,]
test q1 q2 q3 q4
7    g  7  1  7  7
9    i 10 10  8  8

Wert aendern

> data[7,5] <- 22
> data
test q1 q2 q3 q4
1    a  2  3  4  5
2    b  5  4  3  2
3    c  6  4  3  2
4    d  5  4  2  5
5    e  5  5  3  1
6    f  1  4  5  2
7    g  7  1  7 22
8    h  1  8  1  1
9    i 10 10  8  8
>