Python中使用的流行数据科学库

news2025/1/6 20:36:52

Python中使用的流行数据科学库

数据科学是用于采购、组织、打包和以可理解的格式呈现数据的程序和方法。在不同的领域可能有不同种类的数据,这些数据可能是结构化的,也可能是非结构化的。

为什么Python在人们开始他们的编码之旅时如此受欢迎?

有许多工具和库是为Python开发者建立的,所以他们不必从头开始实现许多东西。Numpy、Matplotlib、Pandas、SciPy、scikit-learn等库被用于统计和处理数字数据。深度学习库,如Tensorflow、PyTorch等,在深度学习和机器学习爱好者中非常受欢迎。

此外,Python已经成为人们开始学习人工智能和ML的默认语言。由于Python是一种基于解释器的语言,这一特点主要用于jyputer notebooks,将整个程序分解成几块(单元),因此任何增加、删除或更新都只会影响该单元下面的代码,而不是任何基于编译的语言,因此有助于数据科学家实施解决方案并遵循标准。

Python很容易学习,是许多学校和学院教给学生的第一种语言。Python编程语言比R语言等统计编程语言更接近人类语言。由于Python是一种通用语言,它也可以在Django和Flask等流行框架的帮助下用于网络开发。R语言对于刚刚开始编程生涯的人来说有点难学,因为它更倾向于科学界。

为什么要学习数据科学?

你在不同的网站上看到的广告都是基于你喜欢的有趣的东西,你是否认为这是靠运气。如果是这样,请三思。这是从你看的youtube视频中产生的数据,从你上次的搜索中产生的数据,他们知道你喜欢的东西和你需要的东西,这样公司就能得到很好的对话率,而不是通过向一个随机的人展示它。亚马逊通过推荐系统销售了超过40%的产品。他们在很大程度上依赖于数据。

在当今时代,所有的公司都是一个数据公司,如果一个公司忽视了它的重要性,它就已经失去了竞争。这些系统背后的人严重依赖数据科学库,使他们的任务更容易。从清理数据到制作机器学习模型。

事实是:数据科学家花了70-80%的时间来清理数据,因为他们可能得到的数据是非结构化的,有偏见的,缺失的值,等等。各行各业对能够处理数据并提供一些意义充分的见解的人有巨大的需求,这样他们才能给客户带来巨大的价值。如果你不想成为一个数据科学家,你也可以用Python的框架来展示一些可视化的东西,或者用numpy来加速一些计算。

接下来,我们将看看Numpy、Scipy、Matplotlib和Pandas。

NumPy

Numpy是Python中使用的大多数科学计算的基础库,其他几个库都依赖于NumPy数组作为其基本输入和输出。它还提供了一些例程,使开发者可以用很少的几行代码在多维数组和矩阵上执行高级数学和统计功能。NumPy的核心功能是其 "ndarray",即n维数组数据结构。这些数组是类型化的,必须匹配数组中的所有元素为同一类型。

# Python program using NumPy for some basic mathematical operations

import numpy as np

# Creating two arrays of rank 2
x = np.array([[5, 3], [7, 9]])
y = np.array([[5, 6], [4, 5]])

# Creating two arrays of rank 1
v = np.array([7, 5])
w = np.array([2, 3])

# Inner product of vectors
print(np.dot(v, w), "\n")

# Matrix and Vector product
print(np.dot(x, v), "\n")

# Matrix and matrix product
print(np.dot(x, y))
复制代码

输出

29

[50 94]

[[37 45]
 [71 87]]
复制代码

Scipy

Scipy既是一个流行的用于科学计算和分析的Python函数库,也是众多工具、框架和更多专业库的一个总括组织。它的功能是为了利用NumPy的核心功能而编写的。如果没有NumPy,我们无法以任何有意义的方式使用SciPy。

我们可以执行许多任务,如积分、插值、傅里叶变换、信号处理、线性代数、统计、多维图像处理等。它通过使用高级函数降低了代码的复杂性,隐藏了执行这些复杂函数的实施层面的细节。

# Python script using Scipy for calculating the determinant

# import numpy library
import numpy as np
A = np.array([[1,2,3],[4,5,6],[7,8,8]])

# importing linalg function from scipy
from scipy import linalg

# Compute the determinant of a matrix
linalg.det(A)
复制代码

输出

3.0
复制代码

Matpoltlib

Matplotlib是一个非常流行的Python库,用于数据的图形表示。它总是程序员将数据中的模式可视化的第一选择。pyplot模块使程序员更容易绘图,提供控制各种参数的功能,如格式化风格、处理多个数字和文本、对数和其他非线性轴等。

Matplotlib甚至允许你自定义你创建的各种图表的布局和颜色。它为数据可视化提供了各种图形和图表,如线图、流图、条形图、饼图、散点图等。它还可以用于绘制来自数据库或网络的数据,或通过解析日志文件提取的数据。

#  Python script using Matplotib for forming a number and cube root relation

import matplotlib.pyplot as plt

# Plot the data
plt.plot([1, 2, 3, 4], [1, 8, 27, 64])

# Add Labels in graph
plt.ylabel('Numbers')
plt.xlabel('Cube ROOT')

# Show the plot
plt.show()
复制代码

输出

潘达

Pandas是一个流行的Python库,用于数据分析。它专门用于准备和提取数据。它为数据分析提供了各种各样的工具。Numpy包被用在它的核心中。潘达斯的关键数据结构被称为DataFrame,它由一些行和列组成。Pandas的数据结构包括数据框架、系列和面板。但是数据框架由于其提供的高功能和灵活性而被广泛使用。它提供了许多内置的方法来分组、组合和过滤数据。

# Python program using Pandas for arranging a given set of data into a  table

# importing pandas as pd
import pandas as pd

data = {"country": ["Brazil", "Russia", "India", "China", "South Africa"],
       "capital": ["Brasilia", "Moscow", "New Dehli", "Beijing", "Pretoria"],
       "area": [8.516, 17.10, 3.286, 9.597, 1.221],
       "population": [200.4, 143.5, 1252, 1357, 52.98] }

data_table = pd.DataFrame(data)
print(data_table)
复制代码

输出

        country    capital    area  population
0        Brazil   Brasilia   8.516      200.40
1        Russia     Moscow  17.100      143.50
2         India  New Dehli   3.286     1252.00
3         China    Beijing   9.597     1357.00
4  South Africa   Pretoria   1.221       52.98
复制代码

在Python中,有许多用于数据科学和分析的库,本文没有涉及,但我将在下面提供一些更多的信息和链接作为额外的资源。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/126411.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

删除数组中符合指定条件的元素

不符合指定条件&#xff0c;可能是指定数组array中的某一项不符合某一值的要求&#xff1b;或者是拿另一个数组arr对比&#xff0c;要求array只留下复合arr中的值或者删除掉复合arr中的值。 1.不符合某一值的要求 <!DOCTYPE html> <html lang"en"> <…

一篇文章轻松掌握java图实现

图的基本概念&#xff1a;这里就不予介绍了&#xff0c;这里主要是讲图的代码实现 荔枝目录&#xff1a;1.图的存储结构1.1邻接矩阵1.2邻接表2.图的遍历2.1广度优先2.2深度优先3.最小生成树3.1Kruskal算法&#xff08;全局&#xff09;3.2Prim算法&#xff08;局部&#xff09;…

[UE][UE5]在UE中画一个线框球,网格连接画球,高阶画球并操控

[UE][UE5]在UE中画一个线框球&#xff0c;网格连接画球&#xff0c;高阶画球并操控1.材质法2.绘制调试球体3.网格连接4.高阶画球并操控1.材质法 缺点&#xff1a;是实体的&#xff0c;只能欺骗视觉&#xff0c;实际还是一个实体体积球&#xff0c;往里放东西显示不出来放进去的…

Python中ArcPy基于矢量要素批量将栅格影像切割为多个小部分

本文介绍基于Python中ArcPy模块&#xff0c;基于具有多个面要素的要素类&#xff0c;批量分割大量栅格图像的方法。 首先明确一下我们的需求。现在需要基于一个面要素类&#xff0c;对一个栅格遥感影像加以分割&#xff1b;如下图所示。这个面要素类中有3个部分&#xff0c;我们…

MMdetection框架速成系列 第02部分:整体算法流程+模型搭建流程+detection训练与测试核心组件+训练部分与测试部分的核心算法

MMdetection框架速成系列 第02部分1 MMDetection是什么1.1 模型分类2. 整体算法流程3 detection训练核心组件3.1 Backbone3.2 Neck3.3 Head3.4 Enhance3.5 BBox Assigner3.9 BBox Sampler3.10 BBox Encoder3.11 Loss3.12 Training tricks4 detection测试核心组件4.1 BBox Decod…

python源码打包exe、exe反编译

一、python3打包为exe文件 这里有个hello.py文件 step1&#xff1a;安装pyinstaller包 pip install pyinstaller step2&#xff1a;在cmd中进入hello.py文件所在路径。可以直接在hello.py文件路径下直接进入cmd step3&#xff1a;打包生成exe文件&#xff0c;使用如下命令&…

Linux网络协议之IP协议(网络层)

Linux网络协议之IP协议(网络层) 文章目录Linux网络协议之IP协议(网络层)1.IP协议基本概念2.IPV4协议格式3.分片与组装4.IP网段划分4.1 IP地址组成4.2 IP地址分类4.3 特殊的IP地址4.4 IP地址的数量限制4.5 私网IP地址与公网IP地址5.对路由的了解1.IP协议基本概念 IP协议全称为“…

第四章 vi和vim 编辑器-[实操篇]

一&#xff1a;vi 和 vim 的基本介绍 所有的 Linux 系统都会内建vi文本编辑器。 Vim 具有程序编辑的能力&#xff0c;可以看做是 Vi的增强版本&#xff0c;可以主动的以字体颜色辨别语法的正确性&#xff0c;方便程序设计。代码补完&#xff0c;编译及错误跳转等方便编程的功…

Linux安装【入门学习适用】

Linux安装安装1、安装VMware激活码&#xff1a;ZF3R0-FHED2-M80TY-8QYGC-NPKYF2、安装CentOS3、FinalShell安装4、FinalShell的使用安装 1、安装VMware VMware-workstation-full-16.2.4无脑下一步即可 激活码&#xff1a;ZF3R0-FHED2-M80TY-8QYGC-NPKYF 2、安装CentOS 1、…

TensorFlow笔记之多元线性回归

文章目录前言一、数据处理二、TensorFlow1.x1.定义模型2.训练模型3.结果可视化4.模型预测5.TensorBoard可视化三、TensorFlow2.x1.定义模型2.训练模型3.结果可视化4.模型预测总结前言 记录使用TensorFlow1.x和TensorFlow2.x完成多元线性回归的过程。 一、数据处理 在此使用波…

dll修复工具哪个比较好?好的修复工具怎么选择

最近有小伙伴咨询小编&#xff0c;问dll修复工具的选择&#xff0c;因为他的电脑经常出现dll缺失&#xff0c;一缺失就打开不了各种软件程序&#xff0c;非常的让他烦恼&#xff0c;所以今天小编就来给大家详细的说说dll修复工具哪个比较好&#xff1f;要怎么去选择。 一.什么…

36 氪发布《研发项目管理软件应用指南》,ONES 入选典型厂商案例

近日&#xff0c;36氪企服点评发布了《研发项目管理软件应用指南》&#xff08;下称「指南」&#xff09;。36氪企服点评致力于帮助每个需求企业服务的人做出正确的决策&#xff0c;携手每个企服行业者为大众提供更高的价值与服务。在该指南中&#xff0c;36氪企服点评综合了海…

大数据系列——ClickHouse表引擎与分布式查询

目录 一、ClickHouse的表引擎 1、MergeTree的创建方式与存储结构 2、ReplacingMergeTree 二、数据分片与分布式查询 三、Clickhouse-ETL常见业务使用 一、ClickHouse的表引擎 表引擎体系&#xff0c;包括合并树、外部存储、内存、文件、接口和其他6大类20多种表引擎。而在…

全流量回溯分析为您解决应用性能问题(一)

前言 信息中心老师反应&#xff0c;用户反馈办公系统有访问慢的情况&#xff0c;需要通过流量分析系统来了解系统的运行情况&#xff0c;此报告专门针对系统的性能数据做了分析。 信息中心已部署NetInside流量分析系统&#xff0c;使用流量分析系统提供实时和历史原始流量&am…

【网络安全篇】浅谈web应用程序的安全风险

&#x1f3c6;今日学习目标&#xff1a; &#x1f340;浅谈web应用程序的安全风险 ✅创作者&#xff1a;贤鱼 ⏰预计时间&#xff1a;25分钟 &#x1f389;个人主页&#xff1a;贤鱼的个人主页 &#x1f525;专栏系列&#xff1a;网络安全 &#x1f341;贤鱼的个人社区&#xf…

使用FastJson进行驼峰下划线相互转换写法及误区

PropertyNamingStrategy 有四种序列化方式。 CamelCase策略&#xff0c;Java对象属性&#xff1a;personId&#xff0c;序列化后属性&#xff1a;persionId – 实际只改了首字母 大写变小写 PascalCase策略&#xff0c;Java对象属性&#xff1a;personId&#xff0c;序列化后属…

说透IO多路复用模型

在说IO多路复用模型之前&#xff0c;我们先来大致了解下Linux文件系统。在Linux系统中&#xff0c;不论是你的鼠标&#xff0c;键盘&#xff0c;还是打印机&#xff0c;甚至于连接到本机的socket client端&#xff0c;都是以文件描述符的形式存在于系统中&#xff0c;诸如此类&…

springboot项目打war包 部署到Tomcat

1、SpringBoot项目Pom文件修改 <!-- 打war包配置 --><packaging>war</packaging><!-- 打war包配置 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><version>…

英美TOP名校对IB的申请要求汇总

英美TOP名校对IB的申请要求汇总 英国大学剑桥大学 IB要求 40-42分&#xff08;满分45&#xff09;&#xff0c;HL要求为776分。 学校可能要求申请者的某些科目成绩为7&#xff0c;视不同专业和学院而定。 对任何要求数学的专业&#xff0c;申请者需选Analysis and Approaches&a…

Google SEM和谷歌SEO的区别

很多人对Google SEM和Google SEO概念很模糊。米贸搜整理如下。看图: Google SEM和SEO的关系 在上图中&#xff0c; 最上面的部分属于Google SEM&#xff0c;即Google Ads广告推广&#xff0c;是一种按效果付费的广告&#xff1b; 底层属于Google SEO&#xff0c;也就是Googl…