【问题标题】:Format function output as data frame格式化函数输出为数据框
【发布时间】:2021-05-15 18:55:49
【问题描述】:

我使用以下公式来总结 5 个不同年份中每个儒略日期的 TABR 的几个度量:

TABR_YearDay<-with(wsmr, tapply(TABR, list(Julian, Year),sum))

产生如下输出:

     2015 2016 2017 2018 2019
33    NA   NA   NA    2   NA
....

80    NA    1   NA   21   NA

81    NA   47   NA   25   NA

82    NA   12    1    9   NA

但我想将这些结果转换为具有 6 列 Julian + 2015-2019 的数据框。

我试过了:

TABR_Day<-as.data.frame(TABR_YearDay)

但这似乎并没有产生完全实现的 df:Julian 没有列,如果我想调用单个变量,我必须在它周围使用引号:

hist(TABR_Day$"2017")

您能帮我将函数输出转换为具有 6 个可行列的数据框吗?

【问题讨论】:

    标签: r dataframe tapply


    【解决方案1】:

    该列存在于结果的行名中。列名通常不以数字开头,我们可以在列名前加上单词'Year' 使其成为'Year_2015' 等并构造最终的数据框。

    TABR_YearDay<-with(wsmr, tapply(TABR, list(Julian, Year),sum))
    colnames(TABR_YearDay) <- paste0('Year_', colnames(TABR_YearDay))
    TABR_Day <- data.frame(Julian = rownames(TABR_YearDay), TABR_YearDay)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-19
      • 1970-01-01
      • 2019-12-05
      相关资源
      最近更新 更多