У меня есть data.frame, содержащий Время как первый столбец, то каждый последующий столбец представляет собой концентрацию фактора транскрипции для отдельных ячеек, например:В R извлекайте значение столбца 1, где последующие столбцы являются максимальными
Time = c(0.1,0.2,0.3,0.4,0.5)
Cell1 = c(1,5,10,4,2)
Cell2 = c(1,5,4,11,5)
Cell3 = c(1,9,5,9,5)
df = data.frame(Time,Cell1,Cell2,Cell3)
Что получает:
Time Cell1 Cell2 Cell3
1 0.1 1 1 1
2 0.2 5 5 9
3 0.3 10 4 5
4 0.4 4 11 9
5 0.5 2 5 5
Теперь я пытаюсь извлечь время, при котором каждая ячейка имеет максимальную концентрацию фактора транскрипции выводить что-то вроде:
Cell1 0.3
Cell2 0.4
Cell3 0.2,0.4
Извините, если это упрощенно, я новичок в R и долгое время спотыкался о форумах. Я могу сделать это путем запроса каждого столбца по отдельности, но у меня есть сотни клеток и было бы написать сценарий для каждого из них с моим текущим методом:
cell1_peak=which(df[2]==max(df[2]));cell1_time=df$Time[cell1_peak]
Возможный способ использования функции применения с моим текущим методом и скомпилировать все ячейки для легкого экспорта?
благодарственные! Я пошел со вторым вариантом, поскольку я предпочел, чтобы он дал ячейкам с несколькими точками времени в одной строке. Я также запомню ваш другой вариант, только если это вызывает проблемы позже. Опять же, спасибо, очень простое объяснение с аккуратным выходом. – Kevin