2015-01-22 2 views
1

После просмотра другого сообщения о именах столбцов и функции combn here рассмотрим тот же файл данных.frame. Мы делаем combn со всеми 2 возможными векторами:Сохранять имена столбцов после вызова функции combn

foo <- data.frame(x=1:5,y=4:8,z=10:14, w=8:4) 
all_comb <- combn(foo,2) 

Есть ли способ сохранить имена столбцов после combn вызова, так и в этом случае мы могли бы получить «х» вместо «X1.5 X4.8», как показано ниже ?

comb_df <- data.frame(all_comb[1,1],all_comb[2,1]) 
print(comb_df) 

    X1.5 X4.8 
1 1 4 
2 2 5 
3 3 6 
4 4 7 
5 5 8 
+0

[Это] [1] может быть то, что вы ищете. [1]: http://stackoverflow.com/questions/20919037/set-column-names-while-calling-a-function –

ответ

0

Я подозреваю, что вы действительно хотите использовать expand.grid().

Попробуйте это:

head(expand.grid(foo)) 

    x y z w 
1 1 4 10 8 
2 2 4 10 8 
3 3 4 10 8 
4 4 4 10 8 
5 5 4 10 8 
6 1 5 10 8 

или

head(expand.grid(foo[, 1:2])) 

    x y 
1 1 4 
2 2 4 
3 3 4 
4 4 4 
5 5 4 
6 1 5 
+0

Спасибо за вашу помощь Andrie. На самом деле, моя задача - использовать функцию гребенки для получения всех возможных 2-комбинаций (a, b) из 4 векторов (x, y, z, w). Мне удалось это сделать, но имена столбцов не хранятся в памяти, возможно ли это сделать? – user3794465

Смежные вопросы