如何使用Python从CSV文件的列中删除英语单词

2024-10-01 04:58:29 发布

您现在位置:Python中文网/ 问答频道 /正文

对Python来说非常陌生

问题:我有一个csv文件,其中包含字母数字文本行,我想删除所有英文单词。例如,输入为:“56X-233丁烷蒸发器蒸汽疏水阀” 所需的输出仅为:“56X-233”

答案是否类似于使用NLTK删除停止词

多谢各位


Tags: 文件csv答案文本字母数字蒸汽nltk
1条回答
网友
1楼 · 发布于 2024-10-01 04:58:29

如果您不关心匹配实际单词,则可以使用正则表达式匹配其中没有数字的任何单词:

import re

def remove_words(line):
    # Remove words containing only letters
    line = re.sub(r"\b[A-Za-z]+\b", "", line)

    # Remove remaining extra spaces
    return re.sub(" +", " ", line).strip()

print(remove_words("Steam traps on Steam to 56X-233 Butane Vaporizer"))

要对整个文件执行此操作,只需抓取文件的每一行并在其上运行上述代码:

with open("my_file.txt") as f:
    for line in f.readlines():
        print(remove_words(line))

相关问题 更多 >