我正在尝试连接到远程可公开访问的MySQL服务器EnsEMBL公共服务器RMySQL,但是当我尝试列出表时,会发生错误:
library(RMySQL)
mydb = dbConnect(MySQL(),
user = 'anonymous',
port = 5306,
host = 'asiadb.ensembl.org')
dbListTables(mydb)
Error in .local(conn, statement, ...) :
could not run statement: No database selected
Run Code Online (Sandbox Code Playgroud)
有没有办法找出这个名字?或者我是否完全犯了一个完全不同的错误?
我很难理解这一点。
下面让我以“整洁”的方式过滤我的 data.frame,并使用plotly 绘制一个图。在本例中,我使用plotly基于公式的API来说明要使用数据框的哪些列:
library(plotly)
tidy_filter = function(data, x) {
x = enquo(x)
filter(data, !!x > 5)
}
mtcars %>%
tidy_filter(wt) %>%
plot_ly(x = ~wt, y = ~wt)
Run Code Online (Sandbox Code Playgroud)
我可以将其包装在一个函数中以获得相同的结果:
tidy_ply = function(data, x) {
x = enquo(x)
data = filter(data, !!x > 5)
plot_ly(data, x = x, y = x)
}
tidy_ply(mtcars, wt)
Run Code Online (Sandbox Code Playgroud)
现在:
我认为enquo(x)在这种情况下至少部分相当于~wt因为这就是它的工作原理。但它们是两个不同的东西(定量VS公式)。它们之间是什么关系,为什么上面的方法有效?
plotly 的公式 API 的优点是,如果我想操纵输入值,我可以做类似~wt/2. 但在上面的操作中,plot_ly(data, x = x, y = x/2)会产生错误。有办法让这项工作发挥作用吗?
我想普遍的问题是如何最好地将整洁的评估方法与情节的公式方法结合起来?
执行以下查询= QUERY(A2:C, "select B, avg(C) group by B pivot A")将返回源数据的正确摘要.但是,结果中有空行和空白列(参见示例).如何摆脱它们?我可以处理空白行,offset 1但是列怎么样?
此外,使用A2:C11指定数据,没有空行或列.但是当数据在源范围的末尾添加时,它不会包含在查询结果中(显然).如何防止空行和列?
干
[~, currenthost] = system('hostname');
table({currenthost}, 'VariableNames', {'host'})
Run Code Online (Sandbox Code Playgroud)
给
ans =
host
__________
[1x9 char]
Run Code Online (Sandbox Code Playgroud)
在做的时候
[~, currenthost] = system('hostname');
table({strcat(currenthost)}, 'VariableNames', {'host'})
Run Code Online (Sandbox Code Playgroud)
给
ans =
host
_________
'my-hostt'
Run Code Online (Sandbox Code Playgroud)
为什么?