Identifizieren Sie R-Objekteigenschaften

Jesse John 21 Juni 2023
  1. Identifizieren Sie R-Objekteigenschaften
  2. str() Funktion
  3. typeof() Funktion
  4. class() Funktion
  5. is.___() Funktionen
  6. attributes() Funktion
  7. Andere Funktionen
Identifizieren Sie R-Objekteigenschaften

Bei unserer Datenanalyse können wir auf eine Situation stoßen, in der eine von uns verwendete Funktion oder ein Operator bei einigen Objekten funktioniert, bei anderen jedoch nicht. Dies geschieht, weil die Funktion/der Operator nur auf Objekte eines bestimmten Typs wirkt.

Beispielsweise funktioniert der Operator $ mit einer Liste, aber nicht mit einem atomaren Vektor.

Beispielcode:

# A list.
l = list(one="First", two="Last")
# A vector.
v = c(one="First", two="Last")

l$one # Works.
v$one# Error.

Ausgang:

> l$one # Works.
[1] "First"

> v$one# Error.
Error in v$one : $ operator is invalid for atomic vectors

Identifizieren Sie R-Objekteigenschaften

Dieser Artikel befasst sich mit Funktionen, die uns helfen, verschiedene Eigenschaften der Objekte zu identifizieren, mit denen wir arbeiten.

Dieser Artikel enthält nur eine kurze Beschreibung und ein Beispiel für jede Funktion. Die Dokumentation von R für diese Funktionen enthält weitere Details und Beispiele.

Zuerst werden wir einige R-Objekte erstellen.

Beispielcode:

# Vector of numbers.
vn = c(4, 5, 6, 7)

# Vector of Booleans. (A vector of True False values)
vb <- vn%%2 == 0

# Data frame.
dfr = data.frame(Col1=vn, Col2=vb)

str() Funktion

Die Funktion str() zeigt die interne Struktur des Objekts an. Es funktioniert auf jedem R-Objekt.

Beispielcode:

str(vn)
str(vb)
str(dfr)

Ausgang:

> str(vn)
 num [1:4] 4 5 6 7

> str(vb)
 logi [1:4] TRUE FALSE TRUE FALSE

> str(dfr)
'data.frame':	4 obs. of  2 variables:
 $ Col1: num  4 5 6 7
 $ Col2: logi  TRUE FALSE TRUE FALSE

typeof() Funktion

Die Funktion typeof() zeigt den Typ oder Speichermodus eines beliebigen R-Objekts an.

Beispielcode:

typeof(vn)
typeof(vb)
typeof(dfr)

Ausgang:

> typeof(vn)
[1] "double"

> typeof(vb)
[1] "logical"

> typeof(dfr)
[1] "list"

class() Funktion

Die Funktion class() zeigt das Attribut class des R-Objekts an. Es listet die Namen der Klassen auf, von denen dieses Objekt erbt.

Sogar Objekte, die kein Klassenattribut haben, haben eine implizite Klasse.

Beispielcode:

class(vb)
class(dfr)

# Create a matrix and check its class.
m = matrix(c(1:6), nrow=3)
class(m)

Ausgang:

> class(vb)
[1] "logical"
> class(dfr)
[1] "data.frame"

> class(m)
[1] "matrix" "array"

is.___() Funktionen

R hat viele eingebaute is.___()-Funktionen. Diese Funktionen geben boolesche Werte zurück, die angeben, ob das Objekt von diesem Typ ist.

Beispielsweise können wir überprüfen, ob ein bestimmtes Objekt ein Vektor, eine Liste, eine Matrix, ein Array, ein Datenrahmen usw. ist. Im folgenden Code sehen wir das Ergebnis der Überprüfung eines bestimmten Objekts mit verschiedenen is.___() Funktionen.

Beispielcode:

# We will check whether the object vb we created is of any of the following types of object.
is.list(vb)
is.vector(vb)
is.atomic(vb)
is.numeric(vb)
is.matrix(vb)
is.data.frame(vb)
is.array(vb)

Ausgang:

> is.list(vb)
[1] FALSE
> is.vector(vb)
[1] TRUE
> is.atomic(vb)
[1] TRUE
> is.numeric(vb)
[1] FALSE
> is.matrix(vb)
[1] FALSE
> is.data.frame(vb)
[1] FALSE
> is.array(vb)
[1] FALSE

attributes() Funktion

Die Funktion attributes() zeigt eine Liste der Attribute eines Objekts an.

Beispielcode:

# For the list object.
attributes(l)

# For the data frame object.
attributes(dfr)

# For the matrix object.
attributes(m)

Ausgang:

> # For the list object.
> attributes(l)
$names
[1] "a" "z"

> # For the data frame object.
> attributes(dfr)
$names
[1] "Col1" "Col2"
$class
[1] "data.frame"
$row.names
[1] 1 2 3 4

> # For the matrix object.
> attributes(m)
$dim
[1] 3 2

Andere Funktionen

Neben den oben beschriebenen Funktionen hat R noch weitere Funktionen, die uns mehr Informationen über ein Objekt geben. Einige von ihnen sind spezifisch für Objekte bestimmter Typen.

Einige der häufiger verwendeten Funktionen sind:

  1. dim(): Zeigt die Abmessungen eines Objekts an.
  2. names(): Zeigt die Namen der Komponenten eines Objekts an.
  3. summary(): Zeigt bei statistischen Modellen eine Zusammenfassung des Modells an.
  4. colnames(), rownames() und row.names(): zeigt die Spalten-/Zeilennamen für matrixartige Objekte an. Für einen Datenrahmen ruft rownames() row.names() auf und colnames() ruft names() auf.
Autor: Jesse John
Jesse John avatar Jesse John avatar

Jesse is passionate about data analysis and visualization. He uses the R statistical programming language for all aspects of his work.