【问题标题】:How to remove from R data.frame the row of types in Jupyter?如何从 R data.frame 中删除 Jupyter 中的类型行?
【发布时间】:2021-05-01 02:53:25
【问题描述】:

我在 Jupyter 中使用 R,然后当我输出我的 data.frame 时,它​​奇怪地显示了一行变量类型,例如 <int><dbl>。我试图删除它,但它删除了任一实际数据行。我怎样才能摆脱它?谢谢!

代码:

createTable <- function(s){
    a <- table(s)
    b <- a/sum(a)
    c <- cumsum(a)
    d <- cumsum(b)
    size <- length(a)

    dfAbs <- as.data.frame(a)
    dfRel <- as.data.frame(b)

    table <- cbind(
        q = 1:size, 
        w = dfAbs, 
        e = dfRel[,-1],
        r = c,
        t = d
    )

    rownames(table) = NULL
    colnames(table) = c("i", "xi", "fi", "fri", "Fi", "Fri")
    return(table)
}

【问题讨论】:

    标签: r dataframe jupyter


    【解决方案1】:

    这不是数据框中的一行,它向您显示列的类型。这是数据框在 Jupyter 中显示的方式。如果您使用 RStudio,您将获得相同的小标题布局。

    tibble::tibble(a = 1:5, b = letters[1:5])
    
    #      a b    
    #  <int> <chr>
    #1     1 a    
    #2     2 b    
    #3     3 c    
    #4     4 d    
    #5     5 e    
    

    【讨论】:

    • 没有办法删除它以改善演示效果吗?
    • 我不使用 Jupyter 笔记本,但如果您希望将其用于演示目的,您可以尝试使用 knitr::kable(df)DT::datatable(df),其中 df 是您的数据框的名称。
    【解决方案2】:

    幸运的是,我发现如果您将data.frame 转换为矩阵,它仍然会在您的 Jupyter 笔记本中显示为一张漂亮的表格。

    您必须注意的只是类型转换,在我的例子中是数字。然后我运行了这个:

    df <- sapply(df, as.numeric) 
    

    当我运行 df:

    【讨论】:

      【解决方案3】:

      更简单的方法是转换为data.frame

      as.data.frame(out)
      

      【讨论】:

        猜你喜欢
        • 2022-01-04
        • 1970-01-01
        • 1970-01-01
        • 2015-04-17
        • 2019-10-03
        • 2012-07-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多