文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

五大常用数据科学Python库

2024-12-03 13:39

关注

处理数据的过程消耗了人们在日常工作中的大量时间,而且我也经历过。我不仅处理过数值数据,还处理过文本数据,这需要大量的预处理,可以通过nltk、textblob和pyldavis等库来帮助。

[[375704]]

下面我将讨论这些库的概述和具体的功能、关于安装的代码,以及如何使用这些有益的库的示例。

Pandas

Pandas库[3]对于致力于探索性数据分析的数据科学家来说是一个必不可少的库。顾名思义,它使用pandas来分析你的数据,或者更具体地说,pandas数据帧。

以下是一些你可以从HTML报表中访问和查看的功能:

如何安装?

使用pip:

 

  1. pip install -U pandas-profiling[notebook] 
  2. jupyter nbextension enable --py widgetsnbextension 
  3.  
  4. 这种方式对我也很管用: 
  5.  
  6. pip install pandas-profiling 
  7. import pandas_profiling 

 

例子:

下面是我们可以从profile report功能访问的可视化示例之一。可以看到一个易于理解的彩色的相关性可视化图。

 

 

局限性:

如果有一个大的数据集,这个概要报告可能需要相当长的时间。我的解决方案是要么简单地使用较小的数据集,要么对整个数据集进行采样。

NLTK

通常与nltk相关的术语是NLP,或者自然语言处理,它是数据科学(和其他学科)的一个分支,它更容易地包含对文本的处理。导入nltk之后,你可以更轻松地分析文本。

以下是你可以使用nltk访问的一些功能:

如何安装:

 

  1. pip install nltk 
  2. import nltk 

 

例子:

 

  1. import nltk 
  2.  
  3. thing_to_tokenize = “a long sentence with words” 
  4.  
  5. tokens = nltk.word_tokenize(thing_to_tokenize) 
  6.  
  7. tokens 
  8.  
  9. returns
  10.  
  11. [“a”, “long”, “sentence”, “with”, “words”] 

 

我们需分开每个单词,以便对其进行分析。

在某些情况下需要分隔单词。然后它们可以被标记、计数,机器学习算法的新指标可以使用这些输入来创建预测。利用nltk的另一个有用的特性是文本可以用于情感分析。情感分析在很多企业中都很重要,尤其是那些有客户评论的企业。现在我们讨论情感分析,让我们看看另一个有助于快速情感分析的库。

TextBlob

TextBlob[8]与nltk有很多相同的优点,但是它的情感分析功能非常出色。除了分析之外,它还具有利用朴素贝叶斯和决策树支持分类的功能。

以下是你可以使用TextBlob访问的一些功能:

如何安装:

 

  1. pip install textblob 
  2.  
  3. from textblob import TextBlob 

 

例子:

情感分析:

 

  1. review = TextBlob(“here is a great text blob about wonderful Data Science”) 
  2.  
  3. review.sentiment 
  4.  
  5. returns
  6.  
  7. Sentiment(polarity=0.80, subjectivity = 0.44) 

 

正常浮点范围为[-1.0,1.0],而积极情感介于[0.0,1.0]之间。

分类:

 

  1. from textblob.classifiers import NaiveBayesClassifier 
  2.  
  3. training_data = [(‘sentence example good one’, ‘pos’), (‘sentence example great two’, ‘pos’), (‘sentence example bad three’, ‘neg’), (‘sentence example worse four’, ‘neg’)] 
  4.  
  5. testing_data = [(‘sentence example good’, ‘pos’), (‘sentence example great’, ‘pos’)] 
  6.  
  7. cl = NaiveBayesClassifier(training_data) 

 

你可以使用这个分类器对文本进行分类,该分类器将返回“pos”或“neg”输出。

这些来自textblob的简单代码提供了非常强大和有用的情感分析和分类。

pyLDAvis

另一个使用NLP的工具是pyLDAvis[10]。它是一个交互式主题模型可视化工具的库。例如,当我使用LDA(潜Dirichlet分布)执行主题模型时,我通常会看到单元格中的主题输出,这可能很难阅读。然而当它出现在一个很好的视觉总结中时,它会更有益,也更容易消化,就像pyLDAvis一样。

以下是你可以使用pyLDAvis访问的一些功能:

总的来说,这是一种让人印象深刻的主题可视化方式,这是其他任何库都无法做到的。

如何安装:

 

  1. pip install pyldavis 
  2.  
  3. import pyldavis 

 

例子:

为了看到最好的例子,这里有一个Jupyter Notebook[11]参考资料,它展示了这个数据科学库的许多独特和有益的特性: https://nbviewer.jupyter.org/github/bmabey/pyLDAvis/blob/master/notebooks/pyLDAvis_overview.ipynb

NetworkX

这个数据科学包NetworkX[13],将其优势集中在生物、社会和基础设施网络可视化上。

以下是你可以使用NetworkX访问的一些功能:

如何安装:

 

  1. pip install networkx 
  2.  
  3. import networkx 

 

例子:

创建图形

 

  1. import networkx 
  2.  
  3. graph = networkx.Graph() 

 

你可以与其他库协作,例如matplotlib.pyplot也可以创建图形的可视化(以数据科学家习惯于看到的方式)。

总结

如你所见,有很多有用的数据科学库可以很容易地访问。本文对一些探索性的数据分析库、自然语言处理库(NLP)和图形库做了一些说明。

我们讨论的顶级数据科学库、平台、包和模块包括:

 

  1. Pandas Profiling 
  2.  
  3. NLTK 
  4.  
  5. TextBlob 
  6.  
  7. pyLDAvis 
  8.  
  9. NetworkX 

 

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯