2013-05-18 2 views
0

я эти две таблицы:вставить новую строку в верхней части таблицы г

1003 1 0 0 2 0 0 0 0 0 0 0 0 0 
1003 2 0 0 1 0 0 0 0 0 0 0 0 0 
1003 3 2 1 2 2 1 2 1 2 0 0 0 0 
1003 4 2 1 1 2 1 1 1 1 0 0 1 1 

и

snp1 1 
snp2 2 
snp3 3 
snp4 4 

, и я хочу добавить, используя R первый столбец второй таблицы в строке в верхней части первой таблицы:

snp1 snp2 snp3 snp4 
1003 1 0 0 2 0 0 0 0 0 0 0 0 0 
1003 2 0 0 1 0 0 0 0 0 0 0 0 0 
1003 3 2 1 2 2 1 2 1 2 0 0 0 0 
1003 4 2 1 1 2 1 1 1 1 0 0 1 1 

Пожалуйста, помогите, большое вам спасибо.

ответ

2

Ваш вопрос немного расплывчатый. Предполагается, что snp1...snp4 должен быть чем-то вроде заголовка столбца? Как насчет других столбцов из первой таблицы? Что должно быть там заполнено? Я как-то сомневаюсь, что это действительно то, что вы хотите сделать, но это на самом деле ответить на ваш вопрос:

#table 1 
x1 <- read.table(text = "1003 1 0 0 2 0 0 0 0 0 0 0 0 0 
1003 2 0 0 1 0 0 0 0 0 0 0 0 0 
1003 3 2 1 2 2 1 2 1 2 0 0 0 0 
1003 4 2 1 1 2 1 1 1 1 0 0 1 1", header = FALSE) 

#table 2 
x2 <- read.table(text = "snp1 1 
snp2 2 
snp3 3 
snp4 4", header = FALSE) 

#insert the first column of table 2 into the first row of table 1 
x3 <- rbind(c(as.character(x2[,1]), rep(NA, ncol(x1) - nrow(x2))), x1) 

Результирующее в:

V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13 V14 
1 snp1 snp2 snp3 snp4 <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> <NA> 
2 1003 1 0 0 2 0 0 0 0 0 0 0 0 0 
3 1003 2 0 0 1 0 0 0 0 0 0 0 0 0 
4 1003 3 2 1 2 2 1 2 1 2 0 0 0 0 
5 1003 4 2 1 1 2 1 1 1 1 0 0 1 1 
+0

Это, как я бы интерпретировал вопрос, как хорошо, но Интересно, хотят ли они просто 'colnames'? –

+0

Колонны поставили меня проблемой. Как я могу избежать V1, V2, ... и первого столбца 1,2,3 –

+0

@HocineBen - в чем проблема с colnames? Вы пытаетесь что-то напечатать? Если вы сможете более четко объяснить свою проблему, возможно, кто-то может предложить решение. – Chase

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