从Pandas Dataframe中删除括号

时间:2016-04-25 13:49:31

标签: python list python-2.7 pandas tuples

我的数据是元组列表:

def find_ngrams(verbatims, n):
  return zip(*[verbatims[i:] for i in range(n)])

bigrams = find_ngrams(verbatims, 4)
print bigrams

[((u'a', u'grossir', u'et', u'a'), 74), ((u'un', u'avis', u'de', u'passage'), 68), ((u'le', u'facteur', u'est', u'pass\xe9'), 67), ((u'V\xeatements', u'+', u'ou', u'-'), 63), ((u'+', u'ou', u'-', u'similaires'), 62), ((u'vous', u'ne', u'pouvez', u'pas'), 54), ((u'sinon', u'une', u'petite', u'recherche'), 53)]

使用Counter()。most_common()方法进行排序和计数:

ngrams = Counter(bigrams).most_common()

FIY我正在对大型文本数据进行n-gram分析。对于n-gram信息:https://en.wikipedia.org/wiki/N-gram 我在pandas中有一个很酷的数据框:

DF = pandas.DataFrame(ngrams)
DF.columns = ['ngram','occurence']
print DF
                                               ngram  occurence
0                                (a, grossir, et, a)         74
1                            (un, avis, de, passage)         68
2                          (le, facteur, est, passé)         67

除了我的n-gram用括号括起来,我不想要那个。我知道我可以使用基本的搜索/替换方法,但我想用更多的计算机科学,逻辑方式来做。另外,如果我进行搜索/替换,我可能会在文本内部丢失一些括号。

我不确定这里的确切问题是什么,但我想这与我列表中的嵌套元组有关。那么如何在不使用括号的情况下将元组列表添加到数据框中呢?

编辑:根据要求,这是我的预期输出:

                                               ngram  occurence
0                                 a, grossir, et, a         74
1                             un, avis, de, passage         68
2                           le, facteur, est, passé         67

谢谢,

1 个答案:

答案 0 :(得分:1)

您不仅仅是在寻找:

import long_named_module as spam
func = spam.func