[問題] 關於length的定義

作者: jklkj (誠實可靠小郎君)   2016-12-05 09:22:33
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
入門(寫過其他程式,只是對語法不熟悉)
[問題敘述]:
之前在用nrow跟ncol的時候有找到說如果length用在檢查data frame回傳值會跟ncol一樣
可是我在用nrow跟ncol的時候沒有問題,用length檢查ncol也沒問題
但是如果我用length(t(test.data))數字就會是行列相乘
有誰知道這是為什麼嗎?
[程式範例]:
length(t(test.data))
[環境敘述]:
[關鍵字]:
選擇性,也許未來有用
作者: clansoda (小笨)   2016-12-05 09:59:00
我不知道我的見解對不對,僅供參考t是轉置矩陣的意思,他會把你的資料變成矩陣的格式
作者: HumuHumu (呼姆呼姆)   2016-12-05 09:59:00
因為length(資料)會回傳妳資料總共幾格 剛好等於行乘列
作者: clansoda (小笨)   2016-12-05 10:00:00
矩陣本來就是一串數字或文字任一組成,所以length會是資料長度,你可以用str看矩陣,他一定是純數字或純文字
作者: HumuHumu (呼姆呼姆)   2016-12-05 10:00:00
然後用了t你的資料會從dataframe變matrix
作者: clansoda (小笨)   2016-12-05 10:01:00
像3*3的矩陣,他會寫有9個numeric之類的,所以length就是9
作者: celestialgod (天)   2016-12-05 11:57:00
data.frame是一種list,一個column是一個子list,所以長度是column數data.frame轉置會變成矩陣,矩陣的length就是行列個數相乘
作者: jklkj (誠實可靠小郎君)   2016-12-05 13:38:00
收到

Links booklink

Contact Us: admin [ a t ] ucptt.com