python中获取有效主题的函数

Python012

python中获取有效主题的函数,第1张

Lambda函数、Map函数、Filter函数、Zip函数、Reduce函数。

Lambda函数是Python中功能最强大的函数之一,它有时也被称之为匿名函数.。Map是程序员用来简化程序的Python内置函数,此函数可以在不使用任何循环的情况下对所有指定的元素进行迭代。Filter是Python中的另一个内置函数,当需要区分其他类型的数据时,这个函数非常有用。Filter函数经常用于根据特定过滤条件来提取数据。

Python(英国发音:/paθn/美国发音:/paθn/)是一种广泛使用的解释型、高级和通用的编程语言。Python支持多种编程范型,包括函数式、指令式、结构化、面向对象和反射式编程。它拥有动态类型系统和垃圾回收功能,能够自动管理内存使用,并且其本身拥有一个巨大而广泛的标准库。

代码

我们在Jupyter Notebook中新建一个Python 2笔记本,起名为topic-model。

为了处理表格数据,我们依然使用数据框工具Pandas。先调用它。

import pandas as pd

然后读入我们的数据文件datascience.csv,注意它的编码是中文GB18030,不是Pandas默认设置的编码,所以此处需要显式指定编码类型,以免出现乱码错误。

df = pd.read_csv("datascience.csv", encoding='gb18030')

我们来看看数据框的头几行,以确认读取是否正确。

df.head()

显示结果如下:

没问题,头几行内容所有列都正确读入,文字显式正常。我们看看数据框的长度,以确认数据是否读取完整。

df.shape

执行的结果为:

(1024, 3)

行列数都与我们爬取到的数量一致,通过。

下面我们需要做一件重要工作——分词。这是因为我们需要提取每篇文章的关键词。而中文本身并不使用空格在单词间划分。

我们首先调用jieba分词包。

import jieba

我们此次需要处理的,不是单一文本数据,而是1000多条文本数据,因此我们需要把这项工作并行化。这就需要首先编写一个函数,处理单一文本的分词。

def chinese_word_cut(mytext):

return " ".join(jieba.cut(mytext))

有了这个函数之后,我们就可以不断调用它来批量处理数据框里面的全部文本(正文)信息了。你当然可以自己写个循环来做这项工作。

下面这一段代码执行起来,可能需要一小段时间。请耐心等候。

df["content_cutted"] = df.content.apply(chinese_word_cut)

执行过程中可能会出现如下提示。没关系,忽略就好。

Building prefix dict from the default dictionary ...

Loading model from cache /var/folders/8s/k8yr4zy52q1dh107gjx280mw0000gn/T/jieba.cache

Loading model cost 0.406 seconds.

Prefix dict has been built succesfully.

执行完毕之后,我们需要查看一下,文本是否已经被正确分词。

df.content_cutted.head()