问题标签 [sqldf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1795 浏览

sql - 如何使用 R 读取 .dump 文件?

假设我有一个 .dump 文件,我想将其转换为data.frame可以在 R 中分析的文件。我知道这sqldf允许我们在数据帧上使用 SQL 命令,但我们也可以使用这个或其他包来读取 .DUMP 文件?

这篇文章展示了如何使用 SQL 恢复 .dump 文件,但这种语法在 .dump 中不起作用sqldf。当然,我不知道如何正确使用 SQL 语法,所以很可能是我的错。

根据提到的帖子,我认为语法应该是这样的:

0 投票
1 回答
1216 浏览

sql - 在 sqldf 中处理引号

我想使用 sqldf 并且能够完全按照在 sql 命令终端中编写的方式编写 SQL 语句。

例如,这是手册中的一个查询:

如果我使用单独的 SQL 文件,查询将被写入:

但是,如果我将其写为:

我希望能够将代码片段复制/粘贴到 sqldf(" ") 周围的区域,而不必转义引号或不必引用包含该命令的外部 sql 文件。

这可能吗?

0 投票
1 回答
246 浏览

r - 如何加快这个ddply?

我有关于一对产品相似性的数据框,例如:

我想为每个产品选择前 10 个最相似的产品,例如

这在数据集很小的时候有效,但是一旦产品数量达到 30k,它就太慢了......

我还尝试了 sqldf,以模仿等级和分区,例如...

sql_top10<-" select a.product1,a.product2, a.similarity,count(*) as rank from productpairs a join productpairs b on a.product1=b.product1 and a.similarity>=b.similarity group by a。 product1,a.simlarity"

但这更糟......有什么建议吗?

0 投票
3 回答
6858 浏览

r - 如何处理 R 中的 sqldf 不支持的列名

我有一个数据框,其中一些列名的格式为 . 格式。例如:Company.1 当我在 sqldf 函数中使用该列时,它会引发错误

任何解决方法,以便我可以按原样使用列名?

0 投票
3 回答
5227 浏览

r - 检查连接是否有效

我在我的函数内部使用RPostgreSQLsqldf这样的:

如何测试该连接是否有效?

0 投票
2 回答
1185 浏览

r - 在 R 中使用 sqldf 执行左连接时将列保留为一个因素

如何使用 sqldf 在左连接中保留因子变量?

我正在尝试使用 R 中的 sqldf 函数执行左连接;但是,该过程似乎将我的“正确”数据框中的因子列转换为合并数据集中的字符类。

我怀疑这是因为左连接包括来自“左”数据帧的行,而“右”数据帧中没有相应的行,因此将 NA 引入了因子列。

我创建了这个可重现的示例:

这是 sqldf 的预期行为吗?将因式变量转换为字符类对程序员来说可能并不明显,除非该变量在未来的分析中表现得不像他们所期望的那样。

我可以通过在使用 addNA(); 加入之前首先向分解列添加一个 NA 级别来保留因子;但是,似乎不鼓励将 NA 添加为级别(请参阅 ?addNA 中的警告)。有没有更好的方法来处理这个?

提前致谢,

杰夫

解决评论的另一个示例:

0 投票
2 回答
1239 浏览

r - 在 R 中围绕多个 SQL 查询包装一个函数?

我有一些基本上按时间解析数据集的 SQL 查询(POSIXct 日期格式):

但是,这段代码对我来说似乎很笨拙。有没有一种巧妙的方法可以将其包装成一个函数或其他一些使它更短的方法,同时仍然吐出相同的 3 个单独的数据集?

0 投票
2 回答
7816 浏览

sql - SQL - 根据另一个表中给出的匹配值在一个表中进行选择

在无休止地尝试在 R 中处理大型 (3-35gb) csv 文件之后,我已经转移到 SQL 来处理这些数据集。所以我在 R 环境中使用这个代码(使用基于 SQlite 的 RSQLite 包),但它不应该减损我的 SQL 问题!

我的问题:如何根据另一个表中给出的匹配值来选择一个表?

我想举例说明。我有以下表格格式:

“数据”表

我想根据下表中给出的特定条件选择符号交换值匹配的所有条目。

“符号交换”表:

(注意,symbolticker是同一个属性,EXExchange也是同一个属性)

所以我想要的输出是它只保留一个给定交换为 N 等的条目:

我可以通过两种方法做到这一点,尽管我对它们不太满意。

此方法在原始表旁边的列中添加引用表,这是多余的。

此方法也可以直接完成工作,但比上述方法要慢。

有没有更好更快的编程方法?由于我的数据集的大小,速度非常重要。欢迎对我的代码发表任何其他评论!

谢谢

0 投票
1 回答
448 浏览

sql - 只读文本文件的第 n 列,它没有带有 R 和 sqldf 的标题

我有一个类似的问题: 使用 SQLDF 或 read.csv.sql 选择每 N 列

我想读取一些大文件的列(150 行的表,>500,000 列,空格分隔,填充数字数据,只有 32 位系统可用)。该文件没有标题,因此上面线程中的代码不起作用,我决定写一篇新文章。

你有解决这个问题的想法吗?

我想过类似的事情,但是任何带有 fread 或 read.table 的结果也可以:

0 投票
0 回答
75 浏览

r - 在 R 中查询/检索 .txt 文件中的某些行没有结果

我在查询 .txt 文件中的某些行时遇到问题。我已经尝试了很多东西并在网上搜索了几天没有解决方案。你是我最后的希望。

所以,我有场所.txt 文件,其中包括;

为数千个场地。

我将此文件导入 R 使用;

我使用 sqldf 包来查询这个文件并且它工作。但是,我注意到我无法检索数据/查询某些场所(主要是场所 ID 40000 和 60000 之间的场所)。比如我不能查询venueID 59900;

然而,我什至可以找到文件中的最后一个场地,场地 ID 85927;

问题是我尝试导入这个文件并以不同的方式查询它,但没有结果!!

我通过打开文本文件查看了这些场所,一切正常;他们的所有信息都包含并用逗号分隔。

为了确保这一点,我什至制作了新的 testven.txt 文件,并复制了一些“未检索到的”场地信息并将其传递到 testven.txt 中。当我导入此文件并查询场所 ID 59900 时,我得到了结果并且它有效??

我不知道出了什么问题,它正在杀死我。

我真的很感谢你的意见,因为我真的尝试了我能想到的一切,而且时间对我来说至关重要。

更新:

这是场地文件的结构:

这是 testven 文件的结构:

令人惊讶的是,列的类型存在差异!!!即使 testven 文件是场所文件的子集。