Tôi tự hỏi, làm cách nào để tạo một vectơ có độ dài bằng 0 dạng số trong R?
Tôi tự hỏi, làm cách nào để tạo một vectơ có độ dài bằng 0 dạng số trong R?
Câu trả lời:
Nếu bạn đọc sự giúp đỡ cho vector(hoặc numerichoặc logicalhoặc characterhoặc integerhoặc double, 'thô' hoặc complexvv) sau đó bạn sẽ thấy rằng tất cả họ đều có một length(hoặc length.outlập luận mà mặc định là 0
vì thế
numeric()
logical()
character()
integer()
double()
raw()
complex()
vector('numeric')
vector('character')
vector('integer')
vector('double')
vector('raw')
vector('complex')
Tất cả đều trả về 0 vectơ độ dài của các chế độ nguyên tử thích hợp.
# the following will also return objects with length 0
list()
expression()
vector('list')
vector('expression')
Giả sử bạn muốn tạo một vectơ x có độ dài bằng 0. Bây giờ cho v là một vector bất kỳ.
> v<-c(4,7,8)
> v
[1] 4 7 8
> x<-v[0]
> length(x)
[1] 0
Đây không phải là một câu trả lời quá đẹp, nhưng đó là những gì tôi sử dụng để tạo các vectơ có độ dài bằng 0:
0[-1] # numeric
""[-1] # character
TRUE[-1] # logical
0L[-1] # integer
Một chữ là một vectơ có độ dài 1 và [-1]loại bỏ phần tử đầu tiên ( phần tử duy nhất trong trường hợp này) khỏi vectơ, để lại một vectơ không có phần tử nào.
Như một phần thưởng, nếu bạn muốn một NAloại tương ứng:
0[NA] # numeric
""[NA] # character
TRUE[NA] # logical
0L[NA] # integer
numeric(0).