2015-07-05 2 views
0

У меня есть набор данных, например, тактранспонирования при сохранении значений числовых

GSM482075 GSM482076 GSM482077 GSM482078 GSM482079 GSM482080 GSM482081 GSM482082 
1 8.79703 8.04291 7.53674 9.94527 8.38775 8.02375 11.1607 10.5481 
2 5.66556 6.42794 6.62527 6.19131 5.34138 5.69543 5.9252 5.55675 

Я хочу транспонировать и превратить столбцы в строки и строки в столбцы, но когда я использую т() он преобразует числовой значения в строки.

1   2   
GSM482075 "8.79703" "5.66556" 
GSM482076 "8.04291" "6.42794" 
GSM482077 "7.53674" "6.62527" 
GSM482078 "9.94527" "6.19131" 
GSM482079 "8.38775" "5.34138" 
GSM482080 "8.02375" "5.69543" 
GSM482081 "11.1607" "5.9252" 
GSM482082 "10.5481" "5.55675" 

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

EDIT: Результаты ул (geomatrixsub) первый объект показан

'data.frame': 2 obs. of 8 variables: 
$ GSM482075: chr "8.79703" "5.66556" 
$ GSM482076: chr "8.04291" "6.42794" 
$ GSM482077: chr "7.53674" "6.62527" 
$ GSM482078: chr "9.94527" "6.19131" 
$ GSM482079: chr "8.38775" "5.34138" 
$ GSM482080: chr "8.02375" "5.69543" 
$ GSM482081: chr "11.1607" "5.9252" 
$ GSM482082: chr "10.5481" "5.55675" 

с использованием т (geomatrixsub [1: 2,])

 1   2   
GSM482075 "8.79703" "5.66556" 
GSM482076 "8.04291" "6.42794" 
GSM482077 "7.53674" "6.62527" 
GSM482078 "9.94527" "6.19131" 
GSM482079 "8.38775" "5.34138" 
GSM482080 "8.02375" "5.69543" 
GSM482081 "11.1607" "5.9252" 
GSM482082 "10.5481" "5.55675" 
+1

это ваш данные data.frame? try 't (sapply (dat, as.numeric))' – jenesaisquoi

+2

результатов 'str (your_data)', пожалуйста? –

+5

Ваши ценности почти наверняка не начинаются с цифр, несмотря на то, что они выглядят так, как будто они. Я предполагаю, что это «фактор». Опубликуйте результат 'str (x)' где 'x' - ваш data.frame – BrodieG

ответ

1

Я знаю, что есть несколько решений здесь с reshape2 и tidyr функции. Я пробовал базовое решение R. Вот он:

t(dat[1:2, ]) 
       1  2 
GSM482075 8.79703 5.66556 
GSM482076 8.04291 6.42794 
GSM482077 7.53674 6.62527 
GSM482078 9.94527 6.19131 
GSM482079 8.38775 5.34138 
GSM482080 8.02375 5.69543 
GSM482081 11.16070 5.92520 
GSM482082 10.54810 5.55675 

Я использовал данные, предоставленные, читать в R с этим с этим кодом, который имеет фрейм данных числовой, но с матрицами Я думаю, он должен работать также:

dat <- read.table(text = " GSM482075 GSM482076 GSM482077 GSM482078 GSM482079 GSM482080 GSM482081 GSM482082 
1 8.79703 8.04291 7.53674 9.94527 8.38775 8.02375 11.1607 10.5481 
        2 5.66556 6.42794 6.62527 6.19131 5.34138 5.69543 5.9252 5.55675") 
Смежные вопросы