python猜年龄代码_不用Excel进行数据分析:升级到使用Python

fb35eb6410e65864195d64597c997e92.png

2017年,全球估计有7.5亿人使用Excel。2017年世界人口约76亿。这意味着大约有10%的人在使用Excel,我猜主要是为了数据分析。太疯狂了。

毫无疑问,Excel对于公司来说是一个极其重要的工具,在每个数据分析师和科学家的工具包中仍然占有一席之地,但是对于大多数工作来说,您需要停止使用Excel并升级到Python。我要告诉你为什么。

因此,如果您还没有迈出学习Python的一步,并将您的数据分析和可视化技能提升到一个新的水平,我将向您介绍5个为什么您现在需要学习Python的原因。到最后,我相信您将期待着用Python替换大部分Excel工作。

规模与自动化

当你想用小数据进行快速的、特别的分析时,Excel是很好的,但是一旦你想转移到更大的范围,它就不起作用了。Excel可以支持多达1048576行16384列的数据。另一方面,Python可以根据内存的大小进行扩展,并且还拥有许多支持内存不足计算的工具。

例如,Dask库允许您将计算扩展到在一个计算机集群上运行,而不仅仅是在笔记本上运行。事实上,如果您熟悉熊猫,在CSV中阅读的代码几乎完全相同:

import dask.dataframe as dd

# Load the data with Dask instead of Pandas.

df = dd.read_csv()

一行代码,你现在读取的数据比你电脑的内存还大。我会在Excel中教你怎么做,但这是不可能的。

如果这段代码看起来有点异国情调,那么看看这门课程,它教给你一切你需要知道的东西,让你开始学习Pandas。

此外,Python还可以在涉及多个数据源时进行扩展。虽然Excel是数据存储和计算引擎,但Python完全不依赖于数据。如果您能找到一种方法将数据读入Python,那么您就可以使用它。而且由于Python有很多很棒的库,所以从CSV、Excel、JSON和SQL数据库等许多源读入数据是很容易的。

最后,在自动化方面,Python是一种了不起的编程语言。由于可以将Python直接连接到任何数据源,因此很容易安排一个作业,该作业将使用任何更新重新提取数据,运行计算,甚至创建一个报表或动态仪表板,从而节省大量时间。另一方面,Excel需要太多的人工,无法自动更新。

78e1cceac92345898c4582e839297fd8.png

Python可以直接连接到数据库进行自动更新。来源:NobleDesktop

再现性

可再现性是这样一个概念,即你所创建的任何分析或可视化都应该容易、直接地为其他人再现。不仅需要有人能够重新运行您的流程并最终得到相同的结果,而且他们还应该能够遍历您的步骤以确保准确性。当您开始依赖自动化时,这个概念非常重要。当工作正常时,自动化是惊人的,但当工作不正确时,自动化报告可能是一场噩梦。

Excel的再现性非常具有挑战性。单元格中的Excel计算几乎不可能以任何比例进行检查。数据类型非常混乱,因为您看到的并不总是原始数据中表示的内容,虽然VBA使再现性稍好一些,但在这一点上,您最好投资于学习Python。

查看此Excel文档:

bde71cd067e23860790a4b41e3b0abab.png

你知道sum列应该是a和b的和,但是你如何确认呢?你可以检查其中一个公式,看看它实际上是和,但既然每个单元格都可以是自己的公式,如果它们都不正确怎么办?如果你不注意的话,你可能会错过x行是错误的。

但在Python中,您的总和如下所示:

a = [1,2,3,4]

b = [5,6,7,8]

sum = []

for i in range(a):

sum.append(a[i] + b[i])

此代码清晰易懂,便于确认总和始终计算正确。

使用Python,您可以开发所有工具,使软件工程师能够更好地进行再现性和协作。除此之外,Python在数据连接性方面更为出色,它允许我们分析云中的数据并立即重复一个过程。Git、单元测试、文档和代码格式化标准在Python社区中都很流行。使用Python 3,您甚至可以添加静态类型以使代码更加清晰。所有这些工具都使确保代码编写良好和正确变得更加容易。这样,下次您查看代码或其他人获取代码时,就很容易重新生成和理解。

可转移的技能

如果你知道Excel,你就知道Excel。虽然你所学的技能是有用的,但它们不能转移到任何其他方面。我最喜欢Python的一点是,它不仅是一个用于数据分析和可视化的令人惊叹的工具,而且是一种可以用于许多其他事情的可靠编程语言。

想做机器学习甚至深度学习吗?你可以用Python来实现。想建立一个网站吗?Python可以做到这一点。想让你的智能家居自动化吗?Python也可以做到这一点。

此外,Python比Excel更接近其他编程语言。这使得学习其他语言变得更加容易。学习Python比Excel打开了更多的大门。

最后,对Python的需求非常高。根据StackOverflow的数据,在2019年,它在专业软件开发人员中被列为世界第四流行的编程语言,同时也是第一最受欢迎的编程语言。事实上,美国Python开发者2020年的平均年薪是12万美元。不错。

高级功能

Excel有很多内置公式,但与Python的功能相比,它相形见绌。Python不仅提供数百个库来简化高级统计和分析,而且还可以将可视化提升到另一个级别。使用Matplotlib、Plotly、Streamlit和Seaborn等工具,您可以创建漂亮的数据可视化效果以及交互式仪表板和绘图。

Numpy和scipy对科学计算、线性代数和矢量计算有着惊人的支持。Scikit-Learn允许您将机器学习算法从决策树训练到梯度增强机器。我想xkcd说得最好:

27db85a5cef1aff80a9a1e2ac70463e0.png

Python很容易学习

鉴于Python比Excel有着惊人的优势,它一定很难学习,对吧?不!查看Java版本的Hello World,最简单的程序:

class HelloWorld {

public static void main( String args[] ) {

System.out.println( "Hello World!" );

}

}

Python实际上是一行:print(“Hello World!”). 再简单不过了。Python是最容易掌握的编程语言之一,并且拥有最活跃的社区之一,特别是在数据分析领域。Python是目前最直观的编程语言之一,对于一个没有多少计算机科学背景的人来说,它甚至是可以理解的!虽然学习曲线的表现似乎更好,但另一方面的回报却少得多。Python的学习曲线值得花费时间和精力,因为它的设计是一刀切的,Excel永远不会匹配。

Python很容易使用,而且有一个庞大的支持社区,学习起来从来都不容易。

为了向您展示Python是多么简单,在下一节中,我将向您介绍Python中数据分析和可视化的一些基础。

开始使用Python进行数据分析

为了让您开始,我想带您了解一些基本的Python命令和操作,它们对您的数据分析技能至关重要。让我们从基础开始。

首先,您会注意到Python使用了空白,并且不像其他语言那样使用分号。下面是一个非常简单的例子:

x = 5

y = 10

print(x+y)

导入功能

我们将使用许多库,有些是用Python预先安装的,有些是我们自己安装的。要获取库,请使用import语句:

from collections import Counter

此命令从集合库中导入类计数器。计数器对于数据科学家来说是一个非常有用的工具;它可以计算项目在列表等集合中出现的次数。例如,在下面的代码中,我们将创建一个结婚年龄列表。使用计数器,我们可以快速计算每个独特年龄出现的次数。

Python中的列表

列表是存储数据的有用数据结构。在下一课中将对它们进行更详细的学习。例如:

from collections import Counter

marriage_ages = [22, 22, 25, 25, 30, 24, 26, 24, 35]

value_counts = Counter(marriage_ages)

print(value_counts.most_common())

您可以看到,我们使用第2行的 [] 创建了一个包含结婚年龄的列表。然后,我们将这个列表输入第4行的Counter函数,在第5行将最常见的值作为元组列表打印出来。

元组是()中的集合。这些元组包含两个元素:值和该值出现在列表中的次数。频率对元组列表进行排序。出现次数最多的值首先出现。

Python中的函数

函数也很有用。Python中的函数以关键字def和函数名开头,后面跟着函数期望的括号内的输入。下面是一个函数,它接受两个输入x和y,并返回和sum:

def add_two_numbers(x, y): # function header

"""

Takes in two numbers and returns the sum

parameters

x : str

first number

y : str

second number

returns

x+y

"""

z = x + y

return z # function return

print(add_two_numbers(100,5)) # function call

函数也可以是匿名的,这意味着您不必使用上述结构声明它们。相反,您可以使用lambda关键字。下面是与上面相同的函数,但作为匿名函数:

y = lambda x, y: x + y

print(y(100,5)) # call the function

总结

是时候切换到Python了。别再找借口了!我希望这篇文章能帮助你看到学习Python的好处,并打破一些学习障碍。

ArkAI学院 (www.arkai.net) 用Python把你的技能提升到一个新的水平

2ceaa32951708ef2a60b901a5d3e1d40.png

9d9e62743398080d3fe1f1aaf9c0c6d9.gif

点击上方「蓝字」关注我们

f2f7e0003030c24e01177a83028c6f75.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值