2012-03-14 50 views
0

當我創建了一個數據幀我做的:如何使用不同數量的值創建數據框?

dt = data.frame(a=c(1:5),b=c(1:20)) 
dt 
    a b 
1 1 1 
2 2 2 
3 3 3 
4 4 4 
5 5 5 
6 1 6 
7 2 7 
8 3 8 
9 4 9 
10 5 10 
11 1 11 
12 2 12 
13 3 13 
14 4 14 
15 5 15 
16 1 16 
17 2 17 
18 3 18 
19 4 19 
20 5 20 

正如你所看到的第一列(a)的值是重複的。 如何創建具有不同數量值的不同「列」?

感謝 ^ h

回答

3

使用list。 A data.frame是一種特殊的列表,其中所有元素的長度都相同。

list(a=c(1:5),b=c(1:20)) 
$a 
[1] 1 2 3 4 5 

$b 
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
+0

如果我已經創建了list(),我可以在列表中添加一個向量嗎?例如,在你的例子中列表中,我可以在不同的代碼行中添加c列嗎? – Dail 2012-03-14 09:41:53

+2

是的,您可以使用'c'功能來組合列表。例如,假設你調用上面的'l1',然後使用'c(l1,list(c = 1:3))' – James 2012-03-14 09:45:22