不能错过!跟踪数据的Python技巧

在本文中,你将学会: 

·       在执行loop命令时,跟踪索引

·       更新全新的dictionaryitems函

·       使用可重用对象记录新信息

 

我们将从这些问题入手,详细介绍如何使用Python工具解决问题。

 

希望这种方法能有助于这些工具在代码中应用位置的可视化。

 

1、一边执行Loop命令,一边跟踪

 

假设有一张好友姓名列表。既要遍历列表,又要跟踪计数。该怎么做?使用enumerate即可。 

>>>friends = [ Ben ,  Kate ,  Thinh ]>>> for i, item in enumerate(friends):>>>     print(f {i}: {item} )0: Ben1: Kate2: Thinh

或者简单运用dictionarycomprehension

>>>{i: friends[i] for i in range(len(friends))}{0:  Ben , 1:  Kate , 2:  Thinh }

2、更新DictionaryItems函数:

假如正在使用dictionary函数以跟踪首句中的单词及字数。

sent1 ={ love : 1,  hate : 3

但进行到第二句时,你想要用新语句更新先前的dictionary函数。 

sent2 = { love :2,  flower : 1}

更新的单词包如下:

{ love :3,  hate : 3,  flower : 1}

该怎么做?要是有些工具能助你轻松完成,岂不是很好?如果正好需要这类工具,collections.Counter正中下怀。collections.Counter 这一类允许集合中多个元素的存在 

fromcollections import Counterbag_words = Counter()sent1 = { love : 1,  hate : 3}bag_words.update(sent1)sent2= { love : 2,  flower : 1}bag_words.update(sent2)bag_words

结果:

Counter({ love :3,  hate : 3,  flower : 1})

太好了!现在,当你从其他语句中收集到更多信息时,便可以很容易地更新单词包。可以运用len找出语句中有多少唯一单词, 

>>>len(bag_words)3

或者,可以运用 sum计算语句中的单词总量,

>>>sum(bag_words.values())7

3、运用Namedtuple定义可重用对象 

想跟踪有关朋友的信息列表,为他们的生日做准备。由于暂时无可用信息,因此首先需要创建一个占位符,以便之后在其中输入信息。如果要记录凯特(Kate) 的生日、最喜欢的食物、肤色以及是否内向,可以这样做:

>>>Kate = Friend( Feb ,  cake ,  pink , True)

此外,如果记不住她的生日,可以调用

>>>Kate.birthday Feb

Python中的类对象可以实例化凯特,但是创建一个Friend类来保存简单信息,很耗费时间。在此情况下,namedtuple是个不错的选择。namedtuple允许记录定义一个可重用对象,确保使用正确的归档名称 

fromcollections import namedtupleFriend = namedtuple( Friend  ,  birthday foodcolor introvert )Kate = Friend( Feb ,  cake ,  pink , True)Ben = Friend( Jan , fish ,  red , False)

显示有关凯特的信息:

>>>KateFriend(birthday= Feb , food= cake , color= pink , introvert=True)

如果想知道本 (Ben) 是内向还是外向,可以调用 

>>>Ben.introvertFalse

使用 nametuples , 用户可以轻松地重用同一对象以实例化新信息。

 

认真阅读并实践,你将学会运用enumerate、集合推导(set comprehension)、Counter 和namedtuple 来跟踪信息。

希望本文能丰富数据科学工具包,为大家提供更多有用的知识。

相关链接:

https://towardsdatascience.com/python-tricks-for-keeping-track-of-your-data-aef3dc817a4e

* 凡来源非注明“机器学习算法与Python学习原创”的所有作品均为转载稿件,其目的在于促进信息交流,并不代表本公众号赞同其观点或对其内容真实性负责。

推荐阅读

【教程】VS Code玩转Jupyter Notebook份完整教程

GitHub标星7000+!Python带你实践机器学习圣经PRML

【25本免费电子书强大合集】从数学基础到机器学习,吴恩达、Bengio等专家大牛出品

【资源】 866页《计算机视觉:原理,算法,应用,学习》第五版免费下载!

【入门】Python 函数式编程,这篇文章就够了

你可能感兴趣的:(不能错过!跟踪数据的Python技巧)