0
votes

I'm trying to create a publication-ready table using the ggtexttable function from ggpubr. I have a data frame:

dput(df)    
structure(list(feature = list("start_codon", "stop_codon", "intergenic", 
        "3UTR", "5UTR", "exon", "intron", "ncRNA", "pseudogene"), 
        observed = list(structure(1L, .Names = "start_codon"), structure(1L, .Names = "stop_codon"), 
            structure(418L, .Names = "intergenic"), structure(48L, .Names = "3UTR"), 
            structure(28L, .Names = "5UTR"), structure(223L, .Names = "exon"), 
            structure(578L, .Names = "intron"), structure(20L, .Names = "ncRNA"), 
            structure(1L, .Names = "pseudogene")), expected = list(
            0.286, 0.286, 369.02, 72.461, 33.165, 257.869, 631.189, 
            48.491, 3.172), fc = list(3.5, 3.5, 1.1, 0.7, 0.8, 0.9, 
            0.9, 0.4, 0.3), test = list("enrichment", "enrichment", 
            "enrichment", "depletion", "depletion", "depletion", 
            "depletion", "depletion", "depletion"), sig = list("F", 
            "F", "T", "T", "F", "T", "T", "T", "F"), p_val = list(
            "0.249", "0.249", "0.00186", "0.00116", "0.209", "0.00814", 
            "0.00237", "<1e-04", "0.175")), class = "data.frame", row.names = c(NA, 
    -9L), .Names = c("feature", "observed", "expected", "fc", "test", 
    "sig", "p_val"))

And when I try to turn this into a table:

ggtexttable(df)

I get the error:

Error in (function (label, parse = FALSE, col = "black", fontsize = 12, : unused arguments (label.feature = dots[[5]][1], label.observed = dots[[6]][1], label.expected = dots[[7]][1], label.fc = dots[[8]][1], label.test = dots[[9]][1], label.sig_val = dots[[10]][1], label.p_val = dots[[11]][1])

Does anyone know what might be causing this?

This works fine:

df <- head(iris)
ggtexttable(df)

enter image description here

1
you could post Your data in dput() format rather then just copy and paste...Mal_a
@Malvina_a - thanks - see updatefugu

1 Answers

1
votes

I have found the problem and solution which is going to work for you. First of all your data is not in proper format (nested list) thats why you were getting this error trying to display it. You can check what is the format of the dataset easily by pasting in your console: str(data)

Here is the solution to convert your data to data.frame:

first.step <- lapply(data, unlist) 
second.step <- as.data.frame(first.step, stringsAsFactors = F) 

Then you can easily use the function ggtexttable(second.step) and it displays the table with your data.