Ich frage mich, wie ich einen numerischen Vektor mit der Länge Null in R erstellen kann.
Ich frage mich, wie ich einen numerischen Vektor mit der Länge Null in R erstellen kann.
Antworten:
Wenn Sie die Hilfe für vector
(oder numeric
oder logical
oder character
oder integer
oder double
, 'raw' oder complex
etc) lesen , werden Sie sehen, dass alle ein length
(oder length.out
Argument 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')
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
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 NA
des jeweiligen Typs möchten :
0[NA] # numeric
""[NA] # character
TRUE[NA] # logical
0L[NA] # integer
numeric(0)
.