簡體   English   中英

將矢量組合成矩陣后,如何保持矢量的原始屬性(未更改)

[英]After combine the vectors into matrix, how to keep the original attribute of vector (not changed)

下面的R代碼顯示了一個關於向量組合的例子,之后,向量“c”的屬性變為了字符。 如何使它仍然保持屬性為數字?

a='aa';b='bb';c=c(1,2,3,4,5)
dd=data.table(cbind(a,b,c));dd;class(dd);class(a);class(b);typeof(dd$c)

運行結果如下:

> a='aa';b='bb';c=c(1,2,3,4,5)
> dd=data.table(cbind(a,b,c));dd;class(dd);class(a);class(b);typeof(dd$c)
    a  b c
1: aa bb 1
2: aa bb 2
3: aa bb 3
4: aa bb 4
5: aa bb 5
[1] "data.table" "data.frame"
[1] "character"
[1] "character"
[1] "character"

請參閱typeof(dd $ c)已更改為“字符”而不是數字。 如何保持它的原始屬性?

原因是因為cbind轉換為matrixmatrix只能容納一個類。 如果只有一個character元素,它會將整個矩陣轉換為character 做得更好

data.table(a, b, c)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM