【问题标题】:R: Subtracting two dataframes except some of the columnsR:减去除某些列之外的两个数据帧
【发布时间】:2020-04-14 09:34:25
【问题描述】:

我有两个数据框,包括不同类型股票的股票收益。我想减去数据帧,但不减去数据帧中的前三列(年、季度、组)。换句话说,我只希望减去包含收益的最后两列。

以下是我当前的语法。在前两行中,我创建了新的数据帧,这些数据帧稍后将在第 3 行中减去。然后在最后,我将它们合并到一个新的数据帧中,其中包含减去的、高和低返回值。

BMH <- subset(Ret_BM, BM_gr=="H")
BML <- subset (Ret_BM, BM_gr == "L")
BM_HML <- BMH - BML  #This is wrong since it subtracts year, quarter and group column as well.

plot_data <- join_all(list(BMH, BML, BM_HML), by = c("year_ret", "Q"))

【问题讨论】:

  • 您能提供示例数据框吗?
  • 可能是BMH[-(1:3)] - BML[-(1:3)]

标签: r dataframe subtraction


【解决方案1】:

如果您想将变量保留为年份、季度和组,您可以这样做:

cbind(BMH[ ,1:3], BMH[,-c(1:3)] - BML[,-c(1:3)])

并使用as.data.frame()再次保存转换为数据框

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多