Я работаю с некоторыми геномными файлами в R. У меня большая матрица, отформатированная, как в примере ниже, где столбцы - это образец, а строки - это гены (в реальной матрице 205 столбцов и более 22 тыс. Строк.
GSM1304852 GSM1304853 GSM1304854 GSM1304855
1007_s_at 2.3945368 2.27518369 2.1611630 1.9641833
1053_at 0.1051084 0.06160802 0.3421762 0.3593916
117_at -0.4597124 -0.52310349 -0.4436059 -0.6370277
121_at 0.9333566 1.13180904 0.9975700 1.0079778
У меня также есть кадр данных, отформатированный, как в примере ниже, где geo_accession
- это тот же идентификатор, который можно найти в первой строке матрицы.
title geo_accession Age Disease_State Gender pH PMI Race RIN tissue
GSM1304852 bipolar_hip_10 GSM1304852 52 bipolar disorder M 6.7 23.5 W 6.3 hippocampus
GSM1304853 bipolar_hip_11 GSM1304853 50 bipolar disorder F 6.4 11.7 W 6.8 hippocampus
GSM1304854 bipolar_hip_12 GSM1304854 28 bipolar disorder F 6.3 22.3 W 7.7 hippocampus
GSM1304855 bipolar_hip_13 GSM1304855 55 bipolar disorder F 6.4 17.5 W 7.6 hippocampus
GSM1304856 bipolar_hip_14 GSM1304856 58 bipolar disorder M 6.8 27.7 W 7.0 hippocampus
GSM1304857 bipolar_hip_15 GSM1304857 28 bipolar disorder M 6.2 27.4 W 7.7 hippocampus
Мне нужно поместить все столбцы в подмножествов матрице, связанной с определенной тканью (в полном кадре данных есть 3 вида ткани), поэтому в конце мне нужно иметь 3 матрицы.
Например: из матрицы я хочу взять толькостолбец, связанный с hippocampus
:
matrix # an R matrix object
DataFrame # an R dataframe
DFhip <- DataFrame[ which(tissue == 'hippocampus',]
GSMlist <- DFhip$geo_accesion
MatrixHip <- matrix[GSMlist,] # I know this is the wrong syntax, it's just to let you understand
Я относительно новичок в R и не привык к подмножеству матриц.