python 怎样读( 二 )


b.进口大熊猫 。
c.将数据集(hn_stories.csv)读入pandas数据框 。
d.使用df.columns列名添加到我们的数据帧 。
e.创建一个名为的函数load_data(),其中包含用于读取和处理数据集的代码 。
f.利用换行符(\n)和制表符(\t)保留格式,因此Python可以读取脚本 。
g.将输出重定向printf到read.py使用>运算符调用的文件 。
由于read.py尚不存在 , 因此已创建文件 。
运行上面的代码后,我们可以cat read.py在命令行中键入并执行命令以检查的内容read.py 。
如果一切正常运行,我们的read.py文件将如下所示: 。
创造 __init__.py 。
在该项目的其余部分,我们将创建更多脚本来回答我们的问题并使用该load_data()函数 。
尽管我们可以将该函数粘贴到使用该函数的每个文件中,但是如果我们正在处理的项目很大,则可能会变得非常麻烦 。
为了解决这个问题,我们可以创建一个名为的文件__init__.py 。
本质上,__init__.py允许文件夹将其目录文件视为包 。
最简单的形式__init__.py可以是一个空文件 。
它只需要存在就可以将目录文件视为包 。
您可以在Python文档中找到有关包和模块的更多信息 。
因为load_data()是中的函数read.py,所以我们可以使用导入包的相同方法来导入该函数:from read import load_data() 。
还记得使用命令行创建文件的多种方法吗?我们可以使用另一个命令来创建文件__init__.py这次,我们将使用该touch命令来创建文件 。
touch是一个在您运行命令后立即为您创建一个空文件的命令: 。
探索标题中的单词 。
现在,我们已经创建了一个脚本来读取和处理数据以及创建的数据__init__.py,我们可以开始分析数据了!我们要探索的第一件事是标题中出现的独特词 。
为此,我们要执行以下操作: 。
1)count.py使用命令行创建一个名为的文件 。
2)load_data从导入read.py,并调用函数以读取数据集 。
3)将所有标题合并为一个长长的字符串 。
当您合并标题时 , 我们希望在每个标题之间留一个空格 。
在此步骤中,我们将使用Series.str.cat连接字符串 。
4)将长字符串拆分成单词 。
5)使用Counter类可以计算每个单词在字符串中出现的次数 。
6)使用该.most_common()方法将100个最常用的单词存储到wordCount 。
如果使用命令行创建此文件,则外观如下: 。
printf "from read import load_data\nfrom collections import Counter\n\nstories = load_data()\nheadlines = stories['headline'].str.cat(sep = ' ').lower()\nwordCount = Counter(headlines.split(' ')).most_common(100)\nprint(wordCount)\n" > count.py 。
运行上面的代码后,您可以cat count.py在命令行中键入并执行命令以检查的内容count.py 。
如果一切正常运行,您的count.py文件将如下所示: 。
现在,我们已经创建了Python脚本 , 我们可以从命令行运行脚本以获取一百个最常用单词的列表 。
要运行脚本,我们从命令行键入python count.py命令 。
脚本运行后,您将看到以下打印结果: 。
[('the', 2045), ('to', 1641), ('a', 1276), ('of', 1170), ('for', 1140), ('in', 1036), ('and', 936), ('', 733), ('is', 620), ('on', 568), ('hn:', 537), ('with', 537), ('how', 526), ('-', 487), ('your', 480), ('you', 392), ('ask', 371), ('from', 310), ('new', 304), ('google', 303), ('why', 262), ('what', 258), ('an', 243), ('are', 223), ('by', 219), ('at', 213), ('show', 205), ('web', 192), ('it', 192), ('–', 184), ('do', 183), ('app', 178), ('i', 173), ('as', 161), ('not', 160), ('that', 160), ('data', 157), ('about', 154), ('be', 154), ('facebook', 150), ('startup', 147), ('my', 131), ('|', 127), ('using', 125), ('free', 125), ('online', 123), ('apple', 123), ('get', 122), ('can', 115), ('open', 114), ('will', 112), ('android', 110), ('this', 110), ('out', 109), ('we', 106), ('its', 102), ('now', 101), ('best', 101), ('up', 100), ('code', 98), ('have', 97), ('or', 96), ('one', 95), ('more', 93), ('first', 93), ('all', 93), ('software', 93), ('make', 92), ('iphone', 91), ('twitter', 91), ('should', 91), ('video', 90), ('social', 89), ('&', 88), ('internet', 88), ('us', 88), ('mobile', 88), ('use', 86), ('has', 84), ('just', 80), ('world', 79), ('design', 79), ('business', 79), ('5', 78), ('apps', 77), ('source', 77), ('cloud', 76), ('into', 76), ('api', 75), ('top', 74), ('tech', 73), ('javascript', 73), ('like', 72), ('programming', 72), ('windows', 72), ('when', 71), ('ios', 70), ('live', 69), ('future', 69), ('most', 68)] 。
在我们的网站上滚动浏览它们会有些尴尬,但是您可能会注意到最常见的词,例如等等 。
这些词被称为停用词the,to a for这些词对人类语音很有用,但对数据分析没有任何帮助 。


推荐阅读