小编eri*_*tin的帖子

R data.table二进制值,按条件分组的最后一行

我有这样的数据:

library(data.table)
id <- c("1232","1232","1232","4211","4211","4211")
conversion <- c(0,0,0,1,1,1)
DT <- data.table(id, conversion)

id   date         conversion
1232 2018-01-01   0
1232 2018-01-03   0
1232 2018-01-04   0
4211 2018-04-01   1
4211 2018-04-04   1
4211 2018-04-06   1
Run Code Online (Sandbox Code Playgroud)

我想基于id行仅为每个组的最后一行创建一个二进制值。仅当组的转换为1时,二进制文件才为1。

id   date         conversion  lastconv
1232 2018-01-01   0           0
1232 2018-01-03   0           0 
1232 2018-01-04   0           0
4211 2018-04-01   1           0
4211 2018-04-04   1           0
4211 2018-04-06   1           1
Run Code Online (Sandbox Code Playgroud)

我尝试在data.table中使用一些带有“ mult”参数的示例,但是只返回了错误。

DT[unique(id), lastconv := 1, mult = "last"]
Run Code Online (Sandbox Code Playgroud)

r data.table

8
推荐指数
3
解决办法
162
查看次数

BigQuery其中日期小于或等于3天减去当前日期

我正在尝试创建一个查询,只返回日期为当前日期减去3天的数据.我试过了:

date <= DATE_ADD(CURRENT_DATE(), -3, 'DAY')

但这会回来 Error: Expected INTERVAL expression

google-bigquery

6
推荐指数
2
解决办法
8364
查看次数

BigQuery全外连接产生"左连接"结果

我有2个表,两个表都包含不同的id值.某些id值可能出现在两个表中,有些值对于每个表都是唯一的.Table1有10,910行,Table2有11,304行

运行左连接查询时:

SELECT COUNT(DISTINCT a.id)
FROM table1 a
JOIN table2 b on a.id = b.id
Run Code Online (Sandbox Code Playgroud)

我在两个表中共享了10,896行或10,896个ID.

但是,当我FULL OUTER JOIN在这两个表上运行时:

SELECT COUNT(DISTINCT a.id)
FROM table1 a
FULL OUTER JOIN EACH table2 b on a.id = b.id
Run Code Online (Sandbox Code Playgroud)

我总共获得了10,896行,但我期待来自table1的所有10,910行.

我想知道我的查询语法是否存在问题.

google-bigquery

2
推荐指数
1
解决办法
4504
查看次数

在presto中选择每月的第一天

我正在尝试为Presto(配置单元表)中的日期值选择月份的第一天。我已经尝试过TRUNC(date,'MM')在Hive中工作,但不能在Presto中工作。

presto

1
推荐指数
1
解决办法
2733
查看次数

Presto:前一个月的最后一天

我有一个日期列表。我想返回上个月的最后一个日期,如下例所示:

date            lastdayofmonthprior
'2018-04-03'    '2018-03-31'
Run Code Online (Sandbox Code Playgroud)

我试过了date_trunc('month', date('2018-04-03'))-1,但是,我收到此错误:

'-' cannot be applied to date, integer
Run Code Online (Sandbox Code Playgroud)

我猜我无法对 Presto 中的日期进行算术运算。

presto

1
推荐指数
1
解决办法
7419
查看次数

Presto SQL - 按所有日期/组组合展开

我有一个包含日期、组和值的表:

date         group   subgroup value
2018-01-01   A       1        20
2018-01-04   A       1        70
2018-01-06   A       1        80
Run Code Online (Sandbox Code Playgroud)

我想填写组/子组组合缺少的日期,如下所示:

date         group   subgroup value
2018-01-01   A       1        20
2018-01-02   A       1        0
2018-01-03   A       1        0
2018-01-04   A       1        70
2018-01-05   A       1        0
2018-01-06   A       1        80
Run Code Online (Sandbox Code Playgroud)

一种方法是通过交叉连接到具有日期序列的表,然后将连接回原始表,但是,我想避免这样做,因为我有大量的组合,所有组合都具有不同的最小值和最大值日期和这种类型的解决方案会相当“性能不佳”。

sql presto

1
推荐指数
1
解决办法
1047
查看次数

雅典娜/急板逃脱下划线

我试图转义类似运算符中的下划线,但没有得到任何结果。我正在尝试查找具有“aa_”等值的任何行。

WHERE value LIKE '%aa\\_%'

sql presto amazon-athena

1
推荐指数
1
解决办法
2276
查看次数

Bigquery标准SQL日期到每月的第一天

在BigQuery Standard SQL中,如何将YYYY-MM-DD格式的日期转换为每月的第一天?

google-bigquery bigquery-standard-sql

0
推荐指数
1
解决办法
1926
查看次数