Я пытаюсь вычислить процентили каждого столбца кадра данных, чтобы сохранить их в виде строк в новом кадре данных. Затем я продолжу чертить этот новый df как линейный график, обернутый разными, основанными на разных подгруппах в моих данных.
Но мои текущие попытки приводят к пустому, не обновленному df.
Я могу сделать следующее для одного указанного столбца:
dataframe:
col1
1 15
2 24
3 23
4 25
5 25
sequence <- seq(from=0, to=1, by=0.01)
quantiles_df <- as.data.frame(quantile(df$col1, sequence))
и я могу сделать следующее, чтобы нарисовать несколько гистограмм, по 1 для каждого столбца моего кадра данных, используя этот код
for (i in 1:length(df)){
print (i)
hist(df[[i]], main="histogram", breaks=20)
}
однако объединение этого цикла for с моей функцией quantile возвращает либо ошибки, либо только один столбец данных.
Возвращает файл quantile.df с 1 столбцом
for (i in 1:length(df)){
print(i)
quantile.df <- as.data.frame(quantile(df[[i]], sequence, na.rm=TRUE))
}
Возвращает ошибку при попытке использовать имена столбцов, а не номера столбцов
for (i in colnames(df)){
print(i)
quantile.df <- as.data.frame(quantile(genes2$[i], sequence, na.rm=TRUE))
}
Ожидаемые результаты:
кадр данных из 120 столбцов на 101 строку, содержащий каждый результат для каждого процентиля от 0 до 100
Фактические результаты:
при использовании length () -> 1 столбец x 101 строка данных
при использовании colnames () ->
Error: unexpected '[' in:
"print(i)
quantile.df <- as.data.frame(quantile(df$['