So erstellen Sie einen numerischen Vektor mit der Länge Null in R.


Antworten:


112

Wenn Sie die Hilfe für vector(oder numericoder logicaloder characteroder integeroder double, 'raw' oder complexetc) lesen , werden Sie sehen, dass alle ein length(oder length.outArgument haben, das standardmäßig 0 ist

Deshalb

numeric()
logical()
character()
integer()
double()
raw()
complex() 
vector('numeric')
vector('character')
vector('integer')
vector('double')
vector('raw')
vector('complex')

Alle geben 0 Längenvektoren der entsprechenden Atommoden zurück.

# the following will also return objects with length 0
list()
expression()
vector('list')
vector('expression')

1
Ich entschuldige mich für die Ablehnung; es war völlig zufällig und ich habe gerade erst bemerkt, dass es passiert war. Es wird mich nicht ändern lassen. Es tut uns leid.
— Stuart R. Jefferys

1
Und wenn der leere Vektor Datumsangaben enthalten soll, welche würden Sie verwenden?
— Zelbinian

@ Zelbinian Das ist eine Kuriosität. Was versuchst du damit zu erreichen?
— BroVic


4

Angenommen, Sie möchten einen Vektor x erstellen, dessen Länge Null ist. Nun sei v ein beliebiger Vektor.

> v<-c(4,7,8)
> v
[1] 4 7 8
> x<-v[0]
> length(x)
[1] 0

1
Ich weiß nicht, was dort passiert. Wieder ist meine Antwort notiert. Warum??? Ich möchte eine Erklärung wissen. Kann mir jemand eine Antwort geben, warum meine Antwort notiert?
— Md. Sahidul Islam

Sie nehmen die Länge des Vektorelements.
— upInCloud

2
Die Länge ist der Beweis dafür, dass der numerische Vektor (hier x) einen Längenvektor von Null hat. Und der x-Vektor wird aus jedem anderen Vektor erstellt. X ist also der gewünschte Vektor mit der Länge Null. Auch sollten Sie die Überschrift des Problems klar überprüfen? @ ShaaradDalvi
— Md. Sahidul Islam

3

Dies ist keine sehr schöne Antwort, aber ich verwende sie, um Vektoren mit der Länge Null zu erstellen:

0[-1]     # numeric
""[-1]    # character
TRUE[-1]  # logical
0L[-1]    # integer

Ein Literal ist ein Vektor der Länge 1 und [-1]entfernt das erste Element ( in diesem Fall das einzige Element) aus dem Vektor, wobei ein Vektor mit Nullelementen verbleibt.

Als Bonus, wenn Sie eine Single NAdes jeweiligen Typs möchten :

0[NA]     # numeric
""[NA]    # character
TRUE[NA]  # logical
0L[NA]    # integer
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.