我有一个看起来像这样的表:
id count
1 100
2 50
3 10
Run Code Online (Sandbox Code Playgroud)
我想添加一个名为cumulative_sum的新列,因此表格如下所示:
id count cumulative_sum
1 100 100
2 50 150
3 10 160
Run Code Online (Sandbox Code Playgroud)
是否有可以轻松完成此操作的MySQL更新语句?实现这一目标的最佳方法是什么?
我有一个包含多个列的数据框; 一些数字和一些字符.如何计算特定列的总和?我GOOGLE了这一点,我看到无数的功能(sum,cumsum,rowsum,rowSums,colSums,aggregate,apply),但我不能让这一切的感觉.
例如,假设我有一个people包含以下列的数据框
people <- read(
text =
"Name Height Weight
Mary 65 110
John 70 200
Jane 64 115",
header = TRUE
)
…
Run Code Online (Sandbox Code Playgroud)
我如何得到所有重量的总和?
我在R中有以下形式的数据帧:
> head(data)
Group Score Info
1 1 1 a
2 1 2 b
3 1 3 c
4 2 4 d
5 2 3 e
6 2 1 f
Run Code Online (Sandbox Code Playgroud)
我想在Score使用该max函数的列之后聚合它
> aggregate(data$Score, list(data$Group), max)
Group.1 x
1 1 3
2 2 4
Run Code Online (Sandbox Code Playgroud)
但我还想显示与每个组Info的Score列的最大值相关联的列.我不知道该怎么做.我想要的输出是:
Group.1 x y
1 1 3 c
2 2 4 d
Run Code Online (Sandbox Code Playgroud)
任何提示?
我知道这听起来很疯狂,可能不应该这样做,但我需要这样的东西 - 我有一个记录 SELECT [Type], [Total Sales] From Before
我想在末尾添加一个额外的行,以在表的末尾显示SUM(After).这可以吗?

假设我有一个包含一些棒球运动员的数据表:
library(plyr)
library(data.table)
bdt <- as.data.table(baseball)
Run Code Online (Sandbox Code Playgroud)
对于每个玩家(由id给出),我想找到与他们玩最多游戏的年份相对应的行.这在plyr中很简单:
ddply(baseball, "id", subset, g == max(g))
Run Code Online (Sandbox Code Playgroud)
data.table的等效代码是什么?
我试过了:
setkey(bdt, "id")
bdt[g == max(g)] # only one row
bdt[g == max(g), by = id] # Error: 'by' or 'keyby' is supplied but not j
bdt[, .SD[g == max(g)]] # only one row
Run Code Online (Sandbox Code Playgroud)
这有效:
bdt[, .SD[g == max(g)], by = id]
Run Code Online (Sandbox Code Playgroud)
但它比plyr快30%,这表明它可能不是惯用语.
我有一个data.table,一个键和大约100个数字行,其中一个设置为键.我想创建一个新变量,其中包含按键分组的每个数字行的总和.
例如,我现在的数据是
ID Count1 Count2 Count3
1 1 3 0
1 3 3 3
2 1 2 1
3 1 1 2
Run Code Online (Sandbox Code Playgroud)
我想拥有的是:
ID Count1 Count2 Count3
1 4 6 3
2 1 2 1
3 1 1 2
Run Code Online (Sandbox Code Playgroud)
我已经尝试了很多方法来实现这个目标.我知道我能做到:
Y <- X[, list(Count=sum(Count1), Count2=sum(Count2), Count3=sum(Count3), by = ID]
Run Code Online (Sandbox Code Playgroud)
但是,我有数百个变量,我只在列表中得到它们的名字.我该怎么办呢?
非常感谢你的帮助.
这是生成测试数据的代码:
ID <-c(rep(210, 9), rep(3917,6))
Count1 <- c(1,1,0,1,3,1,4,1,1,1,1,1,1,0,1)
Count2 <- c(1,0,0,1,0,1,0,1,1,1,1,1,1,0,1)
Count3 <- c(1,0,0,1,0,1,0,1,1,1,1,1,1,0,1)
x <- data.table(ID, Count1, Count2, Count3)
setkey(x, ID)
Run Code Online (Sandbox Code Playgroud) 假设你有下表:
items(item_id, item_parent)
Run Code Online (Sandbox Code Playgroud)
......它是一个自引用表 - item_parent指的是item_id.
您将使用什么SQL查询来选择表中的所有项以及它们的深度,其中项的深度是该项的所有父项和父项的总和.
如果以下是表的内容:
item_id item_parent
----------- -----------
1 0
2 0
3 2
4 2
5 3
Run Code Online (Sandbox Code Playgroud)
...查询应检索以下对象集:
{"item_id":1,"深度":0}
{"item_id":2,"深度":0}
{"item_id":3,"深度":1}
{"item_id":4,"深度": 1}
{"item_id":5,"深度":2}
PS我正在寻找MySQL支持的方法.
我想将安全参数传递给shinyapps.io部署,以便我的应用程序可以通过以下方式获取它们:
Sys.getenv('PASSWORD_X')
我deployApp在rsconnect包中找不到任何功能.
我有5个项目,每个项目可以取值1或-1.我想生成一个由可能组合的行组成的矩阵.项目的顺序无关紧要,组合的顺序无关紧要.我知道我可以机械地做到这一点,但我认为有人必须知道生成这个矩阵的捷径.如果这与其他问题类似,我很抱歉,但我发现的解决方案都不能用我的编程技巧应用于这个特定问题.