2013-12-03 4 views
1

У меня есть таблица с количеством столбцов (простой пример):Collapsing, суммируя и переименование столбцов в таблице в R

a b c d 
1 1 2 2 
2 3 4 3 

Я хочу, чтобы свернуть последние столбцы в один и добавить содержимое производить что-то вроде этого:

a b other 
1 1  4 
2 3  7 

я могу управлять, чтобы найти способы добавления последних столбцов и переименовывать их, но я не могу добавить их к столу снова без изменения формата данных, и мне нужно, чтобы они были таблицу, потому что мне нужно создать график.

+0

Вы помеченный это "DataTables". Вы имеете в виду пакет data.table? Или вы используете это как синоним «data.frame»? – A5C1D2H2I1M1N2O1R2T1

+0

На самом деле существует разница между data.frame и таблицей данных в R. Я считаю, что правильный тег должен быть «datatable», а не «DataTables», который, я думаю, является плагином для другого языка программирования. – SiKiHe

+0

Да, я это знаю. И правильный тег для объекта «data.table» с использованием пакета data.table - [tag: data.table]. – A5C1D2H2I1M1N2O1R2T1

ответ

0

Кадр данных:

dat <- read.table(text = "a b c d 
1 1 2 2 
2 3 4 3", header = TRUE) 

Вы можете вычислить суммы с rowSums:

cbind(dat[1:2], other = rowSums(dat[3:4])) 

# a b other 
# 1 1 1  4 
# 2 2 3  7 
+0

не 'cbind' автоматически принуждает к' матрице'? –

+1

@Manetheran Этот код возвращает фрейм данных, если в качестве аргументов используются кадры данных. –

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