Мне нужен совет относительно манипуляции с фреймом данных в R. Я делаю анализ клональности клеток и пытаюсь сгруппировать клетки в расширенные или нерасширенные клоны.
У меня есть фрейм данных, как показано ниже:
Cell Ident Count Clonality
C1 A 5 Expanded
C2 B 3 Expanded
C3 A 5 Expanded
C4 C 2 Unexpanded
C5 A 5 Expanded
C6 B 3 Expanded
C7 C 2 Unexpanded
C8 A 5 Expanded
C9 A 5 Expanded
C10 B 3 Expanded
Для столбца клональности я сделал цикл, который идентифицирует строки с счетами> = 3 как развернутые, а строки с счетами <3 как нерасширенные. </p>
Однако я хотел идентифицировать строки с количеством <3 как нерасширенные, а для строк с числом> = 3 - идентифицировать их как расширенные # в соответствии с их идентичностью.
Я надеюсь, что мой окончательный фрейм данных будет выглядеть так:
Cell Ident Count Clonality
C1 A 5 Expanded 1
C2 B 3 Expanded 2
C3 A 5 Expanded 1
C4 C 2 Unexpanded
C5 A 5 Expanded 1
C6 B 3 Expanded 2
C7 C 2 Unexpanded
C8 A 5 Expanded 1
C9 A 5 Expanded 1
C10 B 3 Expanded 2
Я думаю, что мне нужно запустить цикл, но я не уверен, как изменить цикл, чтобы сделать это. Цикл, который я использовал в настоящее время, выглядит следующим образом:
for (n in 1:nrow(df)){
count <- df$Count[n]
if (count >= 3){
df$Clonality[n] <- "Expanded"
} else {
df$Clonality[n] <- "Unexpanded"
}
}
Надеюсь, что кто-то может направить меня сюда.