熊猫数据帧迭代并添加到设置问题

时间:2016-10-18 15:26:51

标签: python dataframe set iteration

我有一个如下所示的数据框:

                name
0   [somename1, somename2, n...
1   [name1, someothername, ...
2   [name, name, s...
3   [somename1, name3, s...
4   [name2, name2, s...
5   [somename2, name2, s...
6   [somename1, somename, s...

我试图遍历数据帧并将数据保存在数据集中作为集合中的序列。 因此我这样做了:

events = set([])

for index, row in datarame.iterrows():
    session = row['name']
    print len(session)
    for x in session:
        events.add(x)

print events length total: 
print len(events)

我在这里得到的是:

    24
    80
    15
    60
    76
    66
    83
    32
    100
    73
    13
    3
    2
    9
    57
    2
    2
    4
    1
    events length total:
    108

哪个没有意义。通常它应该添加会话中的所有内容,长度应该是上面数字的摘要,显然不是。

1 个答案:

答案 0 :(得分:1)

python中的set

  

唯一元素的无序集合。

它不允许重复。

您应该将event定义为list

events = []

for index, row in datarame.iterrows():
    session = row['name']
    print len(session)
    for x in session:
        events.append(x)

print events length total: 
print len(events)