2016-03-23 16 views
1
her df sayısal sütunları olan nerede data.frames birleştirilecek çalışıyorum

:sütun sınıfını değiştirmeden data.frames Birleştirme

all = merge(tpm,fpkm,by=0,all=T) 

> head(all) 
    Row.names FUS3_1NM_NO HOG1_1NM_HS IRE1_1NM_HS YAK1_NO_NO WT_NO_NO 
1  Q0010 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 
2  Q0017 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 
3  Q0032 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 
4  Q0045 0.01480327 0.008769000 0.005630685 0.07375834 0.016947766 
5  Q0050 0.01901093 0.000000000 0.006622705 0.11939809 0.011356401 
6  Q0055 0.01642850 0.005019137 0.003222851 0.07277538 0.005526441 
: Ben row.name üzerine bu tabloları birleştirmek istediğiniz

> head(tpm) 
     FUS3_1NM_NO HOG1_1NM_HS IRE1_1NM_HS YAK1_NO_NO WT_NO_NO WT_1NM_NO 
Q0010 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.00000000 
Q0017 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.00000000 
Q0032 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.00000000 
Q0045 0.01480327 0.008769000 0.005630685 0.07375834 0.016947766 0.05605933 
Q0050 0.01901093 0.000000000 0.006622705 0.11939809 0.011356401 0.05999602 
Q0055 0.01642850 0.005019137 0.003222851 0.07277538 0.005526441 0.02537609 

> head(fpkm) 
     WT.basal WT.1NM.PP1 Atg1.AS.1NM.PP1 Fus3.AS.1NM.PP1 Hog1.AS.1NM.PP1 
YAL001C 15.8848 21.4220   22.1730   23.9904   21.2069 
YAL002W 30.7453 40.4043   45.3739   48.5827   46.2439 
YAL003W 3919.8700 2505.7200  2707.6900  2757.9900  2582.3100 
YAL007C 444.3640 494.6290  456.1560  489.1200  451.0880 
YAL008W 90.1188 136.8680  128.3930  150.6090  160.5000 
YAL009W 75.1799 73.7186   78.1866   88.3664   88.5497 

Ancak sonuçta elde edilen data.frame'in Row.names adında ek bir sütunu var ve tüm sütunların sınıfını sayısaldan karaktere değiştirdi.

Git ve bunları sayısal olarak geri çevirmek ve Row.names sütununu kaldırmak zorundayım.

row.name üzerinde birleştirme yapmanın bir yolu var mı

, bir row.name sütunu ekleyip, aynı (sayısal)

+1

Çünkü 'by = 0 '(' by =' row.names'' ile aynıdır, çünkü dataframes rownames ve dolayısıyla 'Row.names' sütununun eklenmesiyle birleştirilir. Sağladığınız örnek veriler, "all" ("row.names" sütunu hariç) tüm sütunları aldığım çıktıda sayısaldur. – Jaap

cevap

İlgili konular