我有一个如下所示的数据框:
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
哪个没有意义。通常它应该添加会话中的所有内容,长度应该是上面数字的摘要,显然不是。
答案 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)