小编jmi*_*738的帖子

Hiveql - RIGHT()LEFT()函数

Hiveql中是否有一个等效于TS(右()或左()函数的函数?例如,RIGHT(col1,10)从col1获取前10个字符.

谢谢

string hive hiveql

10
推荐指数
3
解决办法
3万
查看次数

在GROUP BY子句中使用EXISTS

是否可以执行以下操作:
我有一个看起来像这样的表:

declare @tran_TABLE TABLE(
EOMONTH DATE,
AccountNumber INT,
CLASSIFICATION_NAME VARCHAR(50),
Value Float

)

INSERT INTO @tran_TABLE VALUES('2018-11-30','123','cat1',10)
INSERT INTO @tran_TABLE VALUES('2018-11-30','123','cat1',15)
INSERT INTO @tran_TABLE VALUES('2018-11-30','123','cat1',5 )
INSERT INTO @tran_TABLE VALUES('2018-11-30','123','cat2',10)
INSERT INTO @tran_TABLE VALUES('2018-11-30','123','cat3',12)
INSERT INTO @tran_TABLE VALUES('2019-01-31','123','cat1',5 )
INSERT INTO @tran_TABLE VALUES('2019-01-31','123','cat2',10)
INSERT INTO @tran_TABLE VALUES('2019-01-31','123','cat2',15)
INSERT INTO @tran_TABLE VALUES('2019-01-31','123','cat3',5 )
INSERT INTO @tran_TABLE VALUES('2019-01-31','123','cat3',2 )
INSERT INTO @tran_TABLE VALUES('2019-03-31','123','cat1',15)


EOMONTH     AccountNumber   CLASSIFICATION_NAME     Value
2018-11-30  123                     cat1                10
2018-11-30  123                     cat1                15
2018-11-30  123                     cat1                5
2018-11-30  123 …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server select

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

R - ggplot2 时间序列 x 轴以显示该月的最后一天

为什么 ggplot 一直给我一个月的第一天然后绘制时间序列。
这是我的代码示例:

library(ggplot2)
library(dplyr)
date <- as.Date(c("2008-01-31",
"2008-02-29",
"2008-03-31",
"2008-04-30",
"2008-05-31"))


count <- sample(5)
df <- data.frame(date = date, count = count)
df %>% 
  ggplot(aes(x = date, y = count))+
  geom_line()+
  scale_x_date(date_breaks = "1 month",
               date_labels = '%m/%d')  
Run Code Online (Sandbox Code Playgroud)

我希望 x 轴显示从df该月的最后一天或最后一天开始的实际日期。但它显示的是下个月的第一天。
我尝试搜索此问题,但找不到适用的解决方案。

谢谢。

r time-series ggplot2

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

具有动态偏移量的 TSQL 复制 LAG() 函数

我试图在LAG()不使用的情况下重新创建函数,LAG()但具有Offset依赖于列的动态。我要把这段代码复制到SparkSQL.

这是我的示例数据:

if object_id('tempdb.dbo.#myTable') is not null drop table #myTable
create table #myTable (id int,dates int, flag char, FromToFlagType varchar(2),FromToCounter INT)

insert into #myTable values(1,  '20181031','V','VV',1)
insert into #myTable values(2,  '20181130','V','VV',2)
insert into #myTable values(3,  '20181231','V','VV',3)
insert into #myTable values(4,  '20190131','F','VF',1)
insert into #myTable values(5,  '20190228','F','FF',2)
insert into #myTable values(6,  '20190331','F','FF',3)
insert into #myTable values(7,  '20190430','F','FF',4)
insert into #myTable values(8,  '20190531','V','FV',1)
insert into #myTable values(9,  '20190630','V','VV',2)
insert into #myTable values(10, '20190731','V','VV',3)

id …
Run Code Online (Sandbox Code Playgroud)

sql t-sql apache-spark-sql

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

R中的XPath:如果缺少节点,则返回NA

我正在尝试使用R中的Xpath在html文档中搜索节点。在下面的代码中,我想知道当缺少节点时如何返回NULL或NA:

library(XML)
b <- '
<bookstore specialty="novel">
<book style="autobiography">
<author>
<first-name>Joe</first-name>
<last-name>Bob</last-name>
</author>
</book>
<book style="textbook">
<author>
<first-name>Mary</first-name>
<last-name>Bob</last-name>
</author>
<author>
<first-name>Britney</first-name>
<last-name>Bob</last-name>
</author>
<price>55</price>
</book>
<book style="novel" id="myfave">
<author>
<first-name>Toni</first-name>
<last-name>Bob</last-name>
</author>
</bookstore>
'
doc2 <- htmlTreeParse(b, useInternal=T)
xpathApply(doc2, "//author/first-name", xmlValue)
Run Code Online (Sandbox Code Playgroud)

例如,当我xpathApply()在author上运行该函数时,我会得到4个结果,但是如果要删除其中一个<first-name>节点,我希望该xpathApply函数返回NULL或其他代替它的位置,那么我就不希望它跳过它。如果要删除,我希望结果看起来像这样<first-name>Mary</first-name>

Joe
NA
Britney
Tony
Run Code Online (Sandbox Code Playgroud)

xpath r

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

SQL Server:修复拼写错误的商家名称

我正在寻找有关如何解决同名拼写不同问题的建议.我有一个公司名称的SQL Server数据库,有些公司是相同的,但拼写是不同的.

例如:

Building Supplies pty
Buidings Supplies pty
Building Supplied l/d 
Run Code Online (Sandbox Code Playgroud)

问题是变异中没有明显的一致性.有时它是额外的's',有时它是额外的空间.

不幸的是我没有查找列表,所以我不能使用模糊LookUp.我需要创建清单.

有没有人用来处理这个问题的方法?

ps我试图寻找这个问题,但似乎找不到类似的线程

谢谢

sql t-sql sql-server

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

SQL 使用字符串函数提高索引列性能

我有一个关于使用字符串函数及其对性能的影响的一般性问题。我有一个表,其列 ID 上有非聚集索引。该列中有 20 位 varchar。当我跑步时:

SELECT col1, col2 
FROM tbl
WHERE ID = '00000000009123548754' 
Run Code Online (Sandbox Code Playgroud)

结果很快就回来了。但当我跑步时

SELECT col1, col2 
FROM tbl
WHERE RIGHT(ID, 10) = '9123548754'
Run Code Online (Sandbox Code Playgroud)

这需要很长时间。第一个查询的估计执行计划有一个索引查找,而第二个查询的估计执行计划有一个索引扫描。

我知道 Seek 相对于 Scan 是更快的原因,但为什么 String Function Right() 会产生如此大的影响?

sql sql-server indexing performance sql-server-2005

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

R - .Rmd 中使用的 kable() 不显示笔记本中的输出

我刚开始使用kableExtra库来使我的表格在 PDF 输出中看起来更好。
但是当我kable()在 R Notebook 文件中使用函数时,它不显示输出。相反,我看到输出应该是一个大的空白区域。
这是一个屏幕截图:

在此处输入图片说明 当我Knit将文件转换为 PDF 时,我可以看到输出。
这是一个屏幕截图:
在此处输入图片说明
有没有办法让输出同时出现在 Notebook 和 PDF 中?这是我的代码:

---
title: "R Notebook"
output:
  pdf_document: default
  html_notebook: default
---

```{r  message=FALSE, warning=FALSE}
library(knitr)
library(kableExtra)
library(dplyr)
#plot(cars)
```

```{r}
 cars %>% 
  slice(1:10) %>% 
  select(speed, dist) %>% 
  kable(format = "latex", booktabs = T) %>% 
  column_spec(column = 1:2, width = "0.5in")

```
Run Code Online (Sandbox Code Playgroud)

latex r knitr kableextra kable

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

R - 从管道操作员处运行t检验

是否有可能t.testpiping运营商运营?
我试图找到答案,但围绕这个主题的大多数问题都是针对同一数据集进行多次测试.
我看了一个broom包,但看起来好像阅读结果.
我感兴趣的是是否可以只使用piping并运行t.test()输出.
例如,这是一些示例数据

library(dplyr)
d <- data.frame(
  group = sample(LETTERS[1:2], size = 10, replace = T),
  amount = sample(1:3, size = 10, replace = T)
  )
Run Code Online (Sandbox Code Playgroud)

如果我运行t.test使用base R,我得到结果:

t.test(d$amount~d$group, var.equal = T)
> d
   group amount
1      A      2
2      A      2
3      B      1
4      B      3
5      A      2
6      B      1
7      B      2
8      A      1
9      B      3
10 …
Run Code Online (Sandbox Code Playgroud)

r piping dplyr

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

R - 数据帧中2组之间的差异

我有2个因子列,我想创建第三列,它告诉我第二列是什么,第一列没有.它与这篇文章非常相似,但是我从df使用setdiff()函数到使用函数时遇到了麻烦.
例如:

library(dplyr)
y1 <- c("a.b.","a.","b.c.d.")
y2 <- c("a.b.c.","a.b.","b.c.d.")
df <- data.frame(y1,y2)
Run Code Online (Sandbox Code Playgroud)

y1a.b.和列y2a.b.c..我想要一个三分之一的列返回c.或只是c.

> df
      y1     y2  col3
1   a.b.  a.b.c.  c.
2     a.    a.b.  b.
3 b.c.d.  b.c.d.  
Run Code Online (Sandbox Code Playgroud)

我认为这是应该的组合strsplitsetdiff,但我不能得到它的工作.

我试图将其转换factorcharacter,然后我尝试应用于strsplit()结果,但输出对我来说似乎很奇怪.它似乎在列表中创建了一个列表,这使得很难传递给它setdiff()

#convert factor to character
df <- df %>% mutate_if(is.factor, as.character)
lapply(df$y1,function(x)(strsplit(x,split = "[.]")))

> lapply(df$y1,function(x)(strsplit(x,split = "[.]")))
[[1]]
[[1]][[1]]
[1] …
Run Code Online (Sandbox Code Playgroud)

r strsplit set-difference

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