我最近遇到的六个很酷的Python库我最近在从事机器学习项目时遇到了6个很棒的库。它们为我节省了很多时间,本文将介绍它们。1.clean-textclean-text是一个非常棒的库,如果你需要处理抓取的内容或社交媒体数据,它应该是你的首选。最重要的是,它不需要任何冗长的花哨代码或正则表达式来清理您的数据。这里有几个例子:安装!pipinstallcleantextExample#Importingthecleantextlibraryfromcleantextimportclean#Sampletexttext="""Zürich,largestcityofSwitzerlandandcapitalofthecantonof633Zürich.LocatedinanAl\u017eupine.(https://google.com).Currencyisnot?"""#Cleaningthe"textanwithcleantext(fix_unicode=True,to_ascii=True,nolower_ascii=True,没有=True,no_numbers=True,no_digits=True,no_currency_symbols=True,no_punct=True,replace_with_punct="",replace_with_url="",replace_with_number="",replace_with_digit="",replace_with_currency_symbol="Rupees")输出如我们所见上面,它有Unicode(字母“u”编码)、ASCII字符(Al\u017eupine)、卢比货币符号、苏黎世一词中的HTML链接和标点符号。您只需在clean函数中提及所需的ASCII、Unicode、URL、数字、货币和标点符号即可。或者,可以将它们换成上述函数中的替换参数。例如,我将卢比符号替换为卢比。绝对不需要使用正则表达式或长代码。非常方便的库,特别是如果你想从抓取的内容或社交媒体数据中清除文本。您还可以根据需要单独传递参数,而不是将它们组合在一起。有关详细信息,请查看此GitHub存储库。2.drawdatadrawdata是我发现的另一个很酷的Python库。您需要多久向团队解释一次机器学习概念?当然,这种情况经常发生,因为数据科学是关于团队合作的。该库可帮助您在Jupyter笔记本中绘制数据集。在向我的团队解释机器学习概念时,我真的很喜欢使用这个库。感谢创建此库的开发人员!Drawdata仅适用于四类分类问题。安装!pipinstalldrawdataexample#Importingthedrawdatafromdrawdataimportdraw_scatterdraw_scatter()output执行draw_Scatter()后,会打开上面的绘图窗口。显然,这里有四个类,即A、B、C、D。可以点击任意一个类,绘制出想要的点。每个类在图中代表不同的颜色。您还可以选择将数据下载为csv或json文件。此外,可以将数据复制到剪贴板并从以下代码中读取:#Readingtheclipboardimportpandasasspddf=pd.read_clipboard(sep=",")df该库的限制之一是它仅提供两个类和四个数据点。但除此之外,它绝对有它的价值。有关详细信息,请查看此GitHub链接。3.Autoviz我永远不会忘记用matplotlib进行探索性数据分析所花费的时间。那里有许多简单的可视化库。然而,我最近发现Autoviz只需一行代码就可以自动可视化任何数据集。安装!pipinstallautoviz示例我在这个示例中使用了IRIS数据集。#ImportingAutovizclassfromtheautovizlibraryfromautoviz.AutoViz_ClassimportAutoViz_Class#InitializetheAutovizclassinaobjectcalleddfdf=AutoViz_Class()#UsingIrisDatasetandpassingtothedefaultparametersfilename="Iris.csv"sep=","graph=df.AutoViz(filename,sep=",",depVar=Non="",详细=0,lowess=false,chart_format="svg",max_rows_analyzed=150000,max_cols_analyzed=30,)以上参数均为默认值。欲了解更多信息,请点击此处。输出我们可以看到所有的可视化元素,并且只需一行代码就可以完成我们的EDA。那里有很多自动化可视化库,但我特别喜欢这个。4.Mito每个人都喜欢Excel,对吧?这是首次探索数据集的最简单方法之一。几个月前我偶然发现了Mito,但直到最近才试用它,我绝对爱不释手!它是一个Jupyter-lab扩展的Python库,具有GUI支持,增加了电子表格功能。您可以加载csv数据,将数据集编辑为电子表格,它会自动生成Pandas代码。很酷。Mito值得写一篇完整的博文,但我今天不会详细介绍它。这是一个简单的任务演示。有关更多详细信息,请查看此处。安装#Firstinstallmitoinstallerinthecommandpromptpipinstallmitoinstaller#Then,runtheinstallerinthecommandpromptpython-mmitoinstallerinstall#Then,launchJupyterlaborjupyternotebookfromthecommandpromptpython-mjupyterlab有关安装的更多信息,在这里检查。#ImportingmitosheetandruuningthisinJupyterlabimportmitosheetmitosheet.sheet()执行以上代码后,mitosheet会在jupyterlab中打开。我使用IRIS数据集。首先,我创建了两个新列。一个是萼片的平均长度,另一个是萼片的总宽度。其次,我更改了萼片平均长度的列名称。最后,我为萼片平均长度列创建了一个直方图。执行以上步骤后,代码会自动生成。输入为上一步生成以下代码:frommitosheetimport*#ImportnecessaryfunctionsfromMitoregister_analysis('UUID-119387c0-fc9b-4b04-9053-802c0d428285')#LetMitoknowwhichanalysisisbeinglip\User\ImportedChi:Downloads\archive(29)\Iris.csvimportpandasaspdIris_csv=pd.read_csv('C:\Users\Dhilip\Downloads\archive(29)\Iris.csv')#AddedcolumnGtoIris_csvIris_csv.insert(6,'G',0)#SetGinIris_csvto=AVG(SepalLengthCm)Iris_csv['G']=AVG(Iris_csv['SepalLengthCm'])#RenamedGtoAvg_SepalinIris_csvIris_csv.rename(columns={"G":"Avg_Sepal"},inplace=True)5.Gramformer另一个优秀的库Gramformer基于生成模型,帮助我们纠正句子中的语法。这个库有三个模型,带有检测器、荧光笔和校正器。检测器识别文本是否有语法错误。荧光笔标出错误的部分,改正错误的地方。Gramformer是完全开源的软件,目前处于早期阶段。但它不适合长段落,因为它只适用于句子,它已经在64个字符长度的句子上进行了训练。现在,校正器和荧光笔模型确实有效。让我们看几个例子。安装!pip3install-Ugit+https://github.com/PrithivirajDamodaran/Gramformer.git为Gramformer创建实例gf=Gramformer(models=1,use_gpu=False)#1=corrector,2=detector(presentlymodel1isworking,2hasnotimplemented)example#Givingsampletextforcorrectionundergf.correctgf.correct("""NewZealandislandcountrysinsouthwesternPacificOcaen.Countrypopulationwas5million""")输出我们从上面的输出可以看出,它纠正了语法,甚至纠正了拼写错误。一个非常棒的库,功能强大。我没有在这里尝试过荧光笔,你可以试试,查看这个GitHub文档了解更多细节。6.Styleformer使用Gramformer的良好经验鼓励我寻找更多独特的库。这就是我发现Styleformer的方式,它是另一个出色的Python库。Gramformer和Styleformer都是由PrithivirajDamodaran创建的,并且都基于生成模型。感谢开源的创建者。Styleformer有助于将随意句转换为正式句、将正式句转换为随意句、将主动句转换为被动句以及将被动句转换为主动句。让我们看几个例子:安装!pipinstallgit+https://github.com/PrithivirajDamodaran/Styleformer.git为Styleformer创建一个实例sf=Styleformer(style=0)#style=[0=CasualtoFormal,1=FormaltoCasual,2=ActivetoPassive,3=PassivetoActiveetc..]示例#Convertingcasualtoformalsf.transfer("Igottago")#Formaltocasualsf=Styleformer(style=1)#1->Formaltocasual#Convertingformaltocasualsf.transfer("Pleaseleavethisplace")#ActivetoPassivesf=Styleformer(style=2)#2->ActivetoPassive#Convertingactivetopassivesf.transfer("Wearegoingtowatchamovietonight.")#passivetoactivesf=Styleformer(style=2)#2->ActivetoPassive#Convertingpassivetoactivesf.transfer("Tenantsareprotectedbyleases")看到上面的输出,转换是准确的。我使用这个库将随意的句子转换成正式的句子,尤其是当我有分析时的社交媒体帖子。有关详细信息,请查看GitHub。您可能熟悉前面提到的一些库,但像Gramformer和Styleformer这样的库是最近才出现的。它们被严重低估了,当然值得出名,因为它们为我节省了很多时间,而且我在我的NLP项目中经常使用它们。原标题:最近遇到的6个很酷的Python库,作者:DhilipSubramanian
