In python3, after filter processing, it becomes an iterable object. There are 2 solutions:
① Cut into python2
② Put a layer of list outside the filter
df = df.dropna() lines=df.content.values.tolist() sentences=[] for line in lines: try: segs=jieba.lcut(line) segs = filter (lambda x: len (x)> 1, segs) segs = filter(lambda x:x not in stopwords, segs) sentences.append(segs) except Exception,e: print line continue
change to
df = df.dropna() lines=df.content.values.tolist() sentences=[] for line in lines: try: segs=jieba.lcut(line) segs = list (filter (lambda x: len (x)> 1, segs)) segs = list(filter(lambda x:x not in stopwords, segs)) sentences.append(segs) except Exception: print(line) continue