当前位置: 首页 > 面试题库 >

SAS中的PROC SQL-所有项目对

曾瀚昂
2023-03-14
问题内容

我有一个数据集,需要在其中查看来自另一个组的所有项目对。我在下面创建了一个玩具示例来进一步说明。

BUNCH    FRUITS
1        apples
1        bananas
1        mangos
2        apples
3        bananas
3        apples
4        bananas
4        apples

我想要的是列出所有可能的对,并对它们在一个束中一起出现的频率求和。理想情况下,我的输出将如下所示:

FRUIT1    FRUIT2     FREQUENCY
APPLES    BANANAS    3
APPLES    MANGOS     1

我的最终目标是制作一些最终可以导入Gephi进行网络分析的东西。为此,我需要一个Source和Target列(即上面的FRUIT1和FRUIT2)。

我认为还有一些其他方法也可以不使用PROC SQL(也许使用PROC TRANSPOSE)来解决此问题,但这是我开始的地方。

解决方案

谢谢您的帮助。下面的示例代码适用于对类似内容感兴趣的任何人:

proc sql;
    create table fruit_combo as
    select a.FRUIT as FRUIT1, b.FRUIT as FRUIT2, count(*) as FREQUENCY
    from FRUITS a, FRUITS b
    where a.BUNCH=b.BUNCH and and not a.FRUIT= b.FRUIT
    group by FRUIT1, FRUIT2;
    quit;

问题答案:

最简单的方法是在t1.ID = t2.ID和t1.FRUIT和t2.FRUIT上对表进行笛卡尔(完全)联接。这将生成完整的组合集,然后可以对其进行汇总。



 类似资料:
  • 问题内容: 我有一个像这样的json块: 我如何获取此令牌包含的所有关键项目。例如,从上面的代码中,我希望具有“ ADRESS_LOCATION”,“ LOCATION”,“ FLOOR_NUMBER”和“ self”。 问题答案: 您可以将转换为,然后使用方法获取对象属性的列表。从那里,您可以轻松获得名称。 像这样: 输出:

  • 所以我开始使用Neovim /Spacevim,它真是太棒了! 我仍然在习惯一切,因为我以前从未使用过Vim或类似的东西。 我的问题围绕着在当前打开的项目的所有文件中搜索特定文本。 我正在使用文件管理器,我想知道如何在项目中的所有文件中搜索特定字符串。就像如果我想在当前打开的文件夹/目录中搜索,我该如何去做?主要目标是列出包含此搜索字符串的所有文件。 我已经安装了(以及),但在搜索所有文件中的特定

  • 问题内容: 这一定是一个简单的菜鸟错误,但是 刚回来 但是医生说该方法存在于AbstractProject上,我该怎么办? 问题答案: 你忘了之后。这是一种方法,而不是一种属性;-)

  • 问题内容: 我试图找到一些可以使用qt布局并从中删除所有内容的东西。只是想像一下窗口是什么样子-我有: 所以我需要可以递归调用的东西,以清除并删除父母的所有东西。我尝试了这里提到的事情(在pyqt中清除布局中的所有小部件),但是它们都不起作用(无论如何都没有标记正确答案)。我的代码如下所示: 但这给出了一个错误: =>编辑这种方法很有效(但是,除了: 问题答案: 清除布局的最安全方法是使用其tak

  • 问题内容: 该命令仅覆盖一个目录中的文件。 我想要整个项目,这意味着测试应覆盖dir中的所有文件以及该dir下的所有千岁树dir 。 这样做的命令是什么? 问题答案: 这应该在当前目录及其所有子目录中运行所有测试: 这应该针对给定的特定目录运行所有测试: 这应该以前缀为的导入路径运行所有测试: 这应该运行所有带有前缀的测试导入路径: 这应该在$ GOPATH中运行所有测试: