【问题标题】:How can I make this table in R?我怎样才能在R中制作这张桌子?
【发布时间】:2020-04-28 11:48:00
【问题描述】:

如何制作这样的表格:

在此表中,Col_1Col_2 是自变量,而Col_3 是因变量(Col_1 + Col_2 = Col_3

谁能帮帮我?

【问题讨论】:

  • 你试过 rowSums() 吗?
  • Gambit - 请测试我在答案中提供的代码,如果它失败并发表评论,或者如果它有效则接受:)

标签: r dataframe data.table tidyverse


【解决方案1】:

假设您在名为 df 的 data.frame 中有数据

df$Col_3 <- df$Col_1 + df$Col_2

在哪里

df <- data.frame("Col_1" = c(2,4,5,7,6), "Col_2" = c(3,7,4,8,4))

原始 data.frame 是使用 data.frame() 函数创建的,传递两个双类型(数字)向量,由 c() 函数创建。这两列使用$ 隔离为向量,使用算术运算符+ 求和,并使用赋值运算符&lt;- 分配给df 中的一个新列。

其他方法包括 rowSums() 函数、tidyverse 包中的mutate() (df %&gt;% mutate(Col_3 = Col_1 + Col_2) -&gt; df) 或使用 data.table(请参阅 data.table 包:dt[, Col_3 := Col_1 + Col_2] 这将是我的选择到)。

【讨论】:

  • 这是一个非常基本的问题,您确实应该在以前的帖子中找到答案。但是,这很棘手,因为有很多材料,而且搜索功能只有在您知道要查找的内容时才真正有用,因此我提供了答案并尝试详细说明该过程。如果它解决了您的问题,请记住接受答案。
  • 嗨,很抱歉我有点慢,因为我是 r 新手。它解决了我的问题,我从你那里学到了很多东西!但是我能再问你一个问题吗?你知道如何在闪亮的 r 中应用这样的表格吗?这是创建一个用户界面..
  • 在shiny中应用这个概念是一样的吗?
  • 原则上是肯定的,但我几乎没有使用过闪亮的所以不能保证......
【解决方案2】:

我建议使用 data.table,因为它很简单

DT[,"Col_3":=Col_2+Col_3]

抱歉,我没有足够的代表发表评论

【讨论】:

  • 还好,还是很感谢你的评论!谢谢!
【解决方案3】:

一个tidyverse解决方案是

library(tidyverse)
df <- df %>% 
   mutate(Col_3 = Col_1 + Col_2)

df 在哪里

df <- data.frame("Col_1" = c(2,4,5,7,6), "Col_2" = c(3,7,4,8,4))

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-01
  • 1970-01-01
  • 2023-03-18
  • 2011-04-07
  • 2021-10-10
  • 1970-01-01
相关资源
最近更新 更多