web-dev-qa-db-fra.com

Comment créer un vecteur numérique de longueur nulle en R

Je me demande comment créer un vecteur numérique de longueur nulle en R?

90

Si vous lisez l'aide de vector (ou numeric ou logical ou character ou integer ou double, 'raw' ou complex etc) alors vous verrez qu’ils ont tous un argument length (ou length.out dont la valeur par défaut est 0

Donc

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

Tous renvoient des vecteurs de longueur 0 des modes atomiques appropriés.

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

Simplement:

x <- vector(mode="numeric", length=0)
54
srctaha

Supposons que vous vouliez créer un vecteur x de longueur nulle. Maintenant, v soit n'importe quel vecteur.

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

Ce n'est pas une très belle réponse, mais c'est ce que j'utilise pour créer des vecteurs de longueur nulle:

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

Un littéral est un vecteur de longueur 1 et [-1] supprime le premier élément (l'élément niquement dans ce cas) du vecteur, laissant un vecteur avec zéro élément.

En prime, si vous voulez un seul NA du type respectif:

0[NA]     # numeric
""[NA]    # character
TRUE[NA]  # logical
0L[NA]    # integer
3
Aaron McDaid