Мы получаем число символов с nchar
, находим max
из них ('mx'), вычитаем это из количества символов, делим на 2, и если количество символов меньше, чем max
, затем paste
с обеих сторон с реплицированным 'X' (strrep
)
nr <- nchar(df$Sequence)
mx <- max(nr)
i1 <- ceiling((mx -nr)/2)
out <- ifelse(i1 > 0, paste0(strrep("X", i1), df$Sequence, strrep("X", i1)),
df$Sequence)
substr(out, 1, mx)
Если это для просмотра, другой вариант - DT::datatable
library(DT)
datatable(df, options = list(columnDefs = list(list(className =
'dt-center', targets = 2))))
- вывод в html
или используя htmlTable
library(htmlTable)
htmlTable(df, align = c("r", "c"))
-выход