我尝试使用pandas在一个平面数据源上执行数据分析。具体地说,我试图实现的是SQL中的unionall查询。在
我使用read_csv()方法输入数据,输出具有唯一的整数索引和大约30+列。在
在这些列中,一些列包含标识信息,而其他列包含数据。在
总共,前6列包含唯一标识条目的标识信息。在这6列之后有一系列列(a、B。。。等)参考值。这些列中的一些列是以集合的形式连接在一起的,例如(A、B、C)属于一起的(D、E、F)。在
然而,(D,E,F)也与(A,B,C)有关,如下((A,D),(B,E),(C,F))。
我要做的是获取我的数据集,该数据集包含以下内容:(id1,id2,id3,id4,id5,id6,A,B,C,D,E,F)
并返回以下内容
^{pr2}$
在这里,由于A和D是链接的,它们包含在同一列中。在
(注意,这是一个简化,在整个数据集中有大约1200万个唯一的组合)
我一直试图使用merge、concat和join函数,但都没有用。我觉得我遗漏了一些关键的东西,因为在SQL数据库中,我可以简单地执行unionall查询(这是相当缓慢的,承认)来解决这个问题。在
我在这个阶段没有可用的示例代码。在
另一种写这个问题的方法是基于pandas的一些文档。在left = key lval
right = key rval
merge(left, right, on=key) = key, lval, rval
相反,我想要:left = kev, lval
right = key, lval
union(left, right) = key, lval
key, rval
我不确定是否需要为此创建新的索引键值。在