#' Finds and returns the column or row names of a data frame
#'
#' @param data Optional data frame
#'
#' @return Names as vector
#' @export
#'
#'
getNames <- function(data = NA, margin) {
if(length(data) == 1) {
if(is.na(data)) {
message("Choose data frame: ")
data <- getDataFrame()
}
}
if(!hasArg(margin)) {
margin <- 0
}
while(!margin %in% 1:2) {
message("")
message("From rows: ")
print(head(rownames(data)))
message("")
message("From columns: ")
print(head(colnames(data)))
margin <- as.numeric(readline("Rows (1) or columns (2)? "))
}
#Rows
if(margin == 1) {
ok <- FALSE
while(!ok) {
message("Row names: ")
print(rownames(data))
message("")
prefix <- readline("What's the prefix for the data? ")
message("Found row names: ")
print(rownames(data)[regexpr(prefix, rownames(data)) != -1])
ok <- ok("Samples ok?")
}
return <- rownames(data)[regexpr(prefix, rownames(data)) != -1]
}
#Columns
if(margin == 2) {
ok <- FALSE
while(!ok) {
message("Column names: ")
print(colnames(data))
message("")
prefix <- readline("What's the prefix for the data? ")
message("Found column names: ")
print(colnames(data)[regexpr(prefix, colnames(data)) != -1])
ok <- ok("Samples ok?")
}
return <- colnames(data)[regexpr(prefix, colnames(data)) != -1]
}
return
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.