从字符串中删除字符/符号

时间:2016-11-05 20:07:35

标签: python text word-cloud

我正在为文字云准备文字,但是我被卡住了。

我需要删除所有数字,所有符号都是如此。 , - ? = /! @等,但我不知道怎么做。我不想一次又一次地替换。有没有办法呢?

这是我的概念以及我必须做的事情:

  • 将文本连接成一个字符串
  • 将字符设置为小写< ---我在这里
  • 现在我想删除特定标志并将文本分成单词(列表)
  • 计算单词的频率
  • 接下来做停用词脚本......
abstracts_list = open('new','r')
abstracts = []
allab = ''
for ab in abstracts_list:
    abstracts.append(ab)
for ab in abstracts:
    allab += ab
Lower = allab.lower()

文字示例:

  

MicroRNA(miRNA)是一类非编码RNA分子   大约19至25个核苷酸长度下调   靶基因在转录后水平的表达   结合3'-非翻译区(3'-UTR)。爱泼斯坦 - 巴尔病毒   (EBV)产生至少44种miRNA,但大多数这些miRNA的功能   miRNA尚未确定。以前,我们报告BRUCE为   miR-BART15-3p的靶标,由EBV产生的miRNA,但是我们的数据   表明可能存在其他凋亡相关的靶基因   miR-BART15-3p。因此,在这项研究中,我们寻找新的目标   miR-BART15-3p的基因使用计算机分析。我们发现了可能   Tax1结合蛋白1(TAX1BP1)的3'-UTR中的种子匹配位点。该   包括3'-UTR的报道载体的荧光素酶活性   miR-BART15-3p降低TAX1BP1。 MiR-BART15-3p下调   TAX1BP1 mRNA和蛋白在AGS细胞中的表达   miR-BART15-3p抑制剂上调TAX1BP1的表达   AGS-EBV细胞中的mRNA和蛋白质。 Mir-BART15-3p调节NF-κB   胃癌细胞系中的活性。而且,miR-BART15-3p   强烈促进对5-氟尿嘧啶(5-FU)的化学敏感性。我们的   结果表明miR-BART15-3p靶向抗细胞凋亡的TAX1BP1   癌细胞中的基因,导致细胞凋亡和化学敏感性增加   到5-FU。

2 个答案:

答案 0 :(得分:2)

因此,要将大写字符设置为小写字符,您可以执行以下操作: 所以只需将文本存储到字符串变量中,例如STRING,然后使用命令

STRING=re.sub('([A-Z]{1})', r'\1',STRING).lower()

现在你的字符串将没有大写字母。

要再次删除特殊字符,模块可以帮助您使用子命令:

STRING = re.sub('[^a-zA-Z0-9-_*.]', ' ', STRING )

使用这些命令,您的字符串将没有特殊字符

要确定单词频率,您可以使用从必须导入Counter的模块集合。

然后使用以下命令确定单词出现的频率:

Counter(STRING.split()).most_common()

答案 1 :(得分:0)

我可能会尝试使用string.isalpha():

abstracts = []
with open('new','r') as abstracts_list:
    for ab in abstracts_list:  # this gives one line of text. 
        if not ab.isalpha():
            ab = ''.join(c for c in ab if c.isalpha() 
        abstracts.append(ab.lower())
# now assuming you want the text in one big string like allab was
long_string = ''.join(abstracts)