【发布时间】:2020-11-27 08:31:18
【问题描述】:
我正在分析来自 Indeed 的招聘信息数据集。我的问题是过滤职位描述和抓取包含特殊字符的技能。例如,我无法使用以下代码将“c#”放入绘图中:
def cleanData(desc):
desc = word_tokenize(desc)
desc = [word.lower() for word in desc]
desc = [word for word in desc if word not in stop_words]
return desc
stop_words = stopwords.words('english')
tags_df = df["Description"].apply(cleanData)
result = tags_df.apply(Counter).sum().items()
result = sorted(result, key=lambda kv: kv[1],reverse=True)
result_series = pd.Series({k: v for k, v in result})
skills = ["java", "c#", "c++", "javascript", "sql", "python", "php", "html", "css"]
filter_series = result_series.filter(items=skills)
filter_series.plot(kind='bar',figsize=(20,5))
但是,我仍然可以抓取诸如“c++”、“asp.net”和“react.js”之类的词。感谢您提供任何和所有帮助。
【问题讨论】:
-
请详细说明问题。你能缩小问题的范围,看看它是在绘图部分、标记化还是其他地方?
-
我相信问题出在标记化上。由于 # 字符,它无法将“c#”识别为单词。我目前正在研究其他解决方案,例如 TweetTokenizer 来识别特殊字符。
标签: python pandas nltk data-analysis stop-words