Итак, у меня есть этот фрейм данных (829x2), в котором первый столбец состоит из номеров строк другой матрицы. Мне нужно подставить эти номера строк значениями (идентификационными номерами) из второго столбца второго блока данных (676X2).подстановка имени строки для значения в фрейме данных в r
Вот первые несколько рядов dataframe 1 и 2 первого dataframe
dataframe 1:
Col1(rownames to be replaced) Col2
X1 167 -2.623973e-01
X2 c(14, 275) -2.241113e-01
X3 4 -3.066684e-01
X4 c(493, 165, 170, 187, 224, 246, 262)-2.369324e-01
X8 c (207, 233, 235, 236, 622, 624) -8.503367e-02
X10 369 -2.217171e-01
dataframe 2:
Col1 Col2(Data I want replace the rownames)
1 Formic C00058
2 Methanoic C00058
3 Ethanoic C00033
4 Acetic C00033
5 Propionic C00163
6 Propanoic C00163
7 Butyric C00246
Итак, вот что я бы как конечный продукт (это просто пример чисел не является точным)
Col1 Col2
X1 C00043 -2.623973e-01
X2 c(C00012, C00125) -2.241113e-01
X3 C00033 -3.066684e-01
X4 c(C00023, C00078, etc...) -2.369324e-01
Здесь dput() из dataframe 1. KEGGnumber = Col1 Cor = Col2
>dput(datamap2[1:10,])
structure(list(KEGGnumber = structure(list(X1 = 167, X2 = c(14,
275), X3 = 4, X4 = c(493, 165, 170, 187, 224, 246, 262), X8 = c(207,
233, 235, 236, 622, 624), X10 = 369, X11 = c(207, 233, 235, 236,
622, 624), X12 = 17, X13 = c(225, 240, 622, 623, 626, 631), X21 = c(447,
579)), .Names = c("X1", "X2", "X3", "X4", "X8", "X10", "X11",
"X12", "X13", "X21")), Cor = c(-0.26239726267789, -0.22411133150271,
-0.30666840337651, -0.236932418052063, -0.085033673316946, -0.221717142242715,
-0.23574540607512, -0.254068790827129, -0.410952995109905, 0.0585077720606303
)), .Names = c("KEGGnumber", "Cor"), row.names = c("X1", "X2",
"X3", "X4", "X8", "X10", "X11", "X12", "X13", "X21"), class = "data.frame")
Можете ли вы 'dput' ваш кадр данных? Это зависит от того, какая структура данных у вас есть в каждой ячейке 'Col1'. – Psidom
Col1 формируется как список, но я могу его заблокировать(). Можете ли вы рассказать о dput? Я не знаком с фьюкцией. –
Если вы введете 'dput (dataframe 1)' в свой вопрос, нам будет намного легче помочь. Используйте 'dput' на вашем фрейме данных, он выведет фактическую структуру блока данных, после чего вы сможете вставить результат. – Psidom