【数据分析入门】人工智能、数据分析和深度学习是什么关系?如何快速入门 Python Pandas?

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

目录

  • 一、前言
  • 二、数据分析和深度学习的区别
  • 三、人工智能
  • 四、深度学习
  • 五、Pandas
  • 六、Pandas数据结构
    • 6.1 Series - 序列
    • 6.2 DataFrame - 数据框
  • 七、输入、输出
    • 7.1 读取/写入CSV
    • 7.2 读取/写入Excel
    • 7.3 读取和写入 SQL 查询及数据库表
  • 八、调用帮助
  • 九、选择(这里可以参考上一篇文章的 Numpy Arrays 相关部分)
    • 9.1 取值
    • 9.2 选取、布尔索引及设置值
      • 9.2.1 按位置
      • 9.2.2 按标签
      • 9.2.3 按标签/位置
      • 9.2.4 布尔索引
      • 9.2.5 设置值
  • 十、删除数据
  • 十一、排序
  • 十二、查询序列与数据框的信息
    • 12.1 基本信息
    • 12.2 汇总
  • 十三、应用函数
  • 十四、数据对齐
    • 14.1 内部数据对齐
    • 14.2 使用 Fill 方法运算
  • 十五、后记

本文详细介绍了人工智能、数据分析和深度学习之间的关系,并就数据分析所需的Pandas库做了胎教般的入门引导。祝读得开心!

一、前言

本文是原 《数据分析大全》、现改名为 《数据分析》 专栏的第二篇,我在写这篇文章的时候突然意识到——单靠我是不可能把数据分析的方方面面都讲得明明白白,只是是我自己知道什么,然后再输出我所明白的知识罢了。所以《数据分析大全》的“大全”两个字还真是担不起,就改成 《数据分析》 了。
  本篇主要介绍数据分析中 Python Pandas 相关知识点,打算通过这一篇帮助大家顺利入门Python Pandas,掌握基本的用法和思想
  上一期《数据分析大全》——Numpy基础可能讲的太过侧重代码而忽略了讲解,如果是还未入门的小白可能看完都不知道讲了啥、为什么要讲这些。
  实用性强和门槛低才是好文章的必要因素,像之前的那一篇就太过强调实用了。结果文章是简短了,可除了已经入门或从事相关工作的同行外,没几个能明白讲了啥的。因此,本篇吸取之前的教训,在交稿前又认真地完善了文章的措辞加上段落间的衔接和引例等语句方便小白也能看懂
  让我先来填一下上期的坑,聊聊数据分析和深度学习都有什么区别和联系


二、数据分析和深度学习的区别

数据分析也好,深度学习也罢,都是一种新的技术,而新技术的产生则是为了解决现实中遇到的问题。我们可以姑且把现实问题分为简单问题复杂问题。简单问题,只需要简单分析,我们使用数据分析就够了。而复杂问题,则需要复杂分析,我们这才使用机器学习
  ——那什么是简单问题,什么是复杂问题呢?
  简单问题就比如是今年学院奖学金的评选情况、今天公司的业绩这类问题,数据量不是很大,我们就用数据分析
  而我们天天使用的某宝、某东这类购物APP,它会根据你的历史购物习惯(这里面有着海量的数据),来给推荐你可能感兴趣的商品。那是如何做到的呢?对于这种复杂问题,这类APP背后使用的就是机器学习以及相应的推荐算法


三、人工智能

人工智能的范围很广,广义上的人工智能泛指通过计算机(机器)实现人的头脑思维,使机器像人一样去决策
  机器学习是实现人工智能的一种技术。在机器学习分很多方法(算法),不同的方法解决不同的问题深度学习是机器学习中的一个分支方法
  总结一下:人工智能、机器学习和深度学习的关系是:人工智能包含机器学习,机器学习包含深度学习(方法),即数据分析>机器学习>深度学习>机器学习。


四、深度学习

深度学习在图像,语音等富媒体的分类和识别上取得了非常好的效果,所以各大研究机构和公司都投入了大量的人力做相关的研究和开发。
  举个众人皆知的例子,那就是2016年谷歌旗下DeepMind公司开发的阿尔法围棋(AlphaGo)战胜人类顶尖围棋选手。阿尔法围棋的主要工作原理就是“深度学习”。
在这里插入图片描述


五、Pandas

咳咳,扯远了,本篇文章要讲的Pandas还没说呢。
  在学习任何东西之前,我们都应该明白两个问题——它能干什么?我能用它做什么?
我相信肯定有人和我在入门数据结构时一样,对这个叫“Pandas”的库有很多问题——Pandas是什么?Pandas一词是怎么来的?Pandas是做什么的?…让我们来一起解决这些困惑。
  首先,Pandas是什么?是Panda→熊猫吗?
在这里插入图片描述

这听起来很Cool…但很显然我们不可能用熊猫来帮助我们进行数据分析的工作。其实,Pandas 是一个开放源码、BSD 许可的库,提供高性能、易于使用的数据结构和数据分析工具。

那么,Pandas 一词是怎么来的呢

Pandas 名字的由来衍生自术语 “panel data”(面板数据)和 “Python data analysis”(Python 数据分析。总的来说,Pandas 是一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算)。

听起来明白点了,让我们再来看看 Pandas 究竟是干什么用的。

Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。
Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征。
Pandas 广泛应用在学术、金融、统计学等各个数据分析领域。

让我们来总结一下:Pandas 是基于 Numpy 创建的 Python 库,为 Python 提供了易于使用的数据结构和数据分析工具只需要记住这句话,就可以继续进行我们接下来的学习了!
在这里插入图片描述
  在Python中,我们可以使用以下语句导入 Pandas 库

>>> import pandas as pd


六、Pandas数据结构

6.1 Series - 序列

首先我们来看看序列Pandas Series 类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型。Series 由索引(index)和列组成,函数如下:

pandas.Series( data, index, dtype, name, copy)

让我们对上的参数进行简单的说明
  data:一组数据(ndarray 类型)。
  index:数据索引标签,如果不指定,默认从 0 开始。
  dtype:数据类型,默认会自己判断。
  name:设置名称。
  copy:拷贝数据,默认为 False。
  想想看,要是实现存储任意类型数据的一维数组(如下图),应该怎么实现呢?
在这里插入图片描述
  这边附上了实现代码:

>>> s = pd.Series([3, -5, 7, 4], index=['a', 'b', 'c', 'd'])


6.2 DataFrame - 数据框

DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(比如数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。
在这里插入图片描述
  我们要是想实现上方的存储不同类型数据的二维数组,可以这么实现:

>>> data = {'Country': ['Belgium', 'India', 'Brazil'], 'Capital': ['Brussels', 'New Delhi', 'Brasília'],'Population': [11190846, 1303171035, 207847528]}

>>> df = pd.DataFrame(data, columns=['Country', 'Capital', 'Population'])


七、输入、输出

7.1 读取/写入CSV

在解决这个问题前先来了解一下,什么是CSV:

CSV(Comma-Separated Values,逗号分隔值,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)
CSV 是一种通用的、相对简单的文件格式,被用户、商业和科学广泛应用。

Pandas 可以很轻松地处理CSV文件

>>> pd.read_csv('file.csv', header=None, nrows=5)
>>> df.to_csv('myDataFrame.csv')


7.2 读取/写入Excel

在解决问题时,往往涉及到从Excel读取或写入数据,以下给出了相关的代码实现。也有读取内含多个表的Excel中数据的代码实现:

>>> pd.read_excel('file.xlsx')
>>> pd.to_excel('dir/myDataFrame.xlsx', sheet_name='Sheet1')
# 读取内含多个表的Excel
>>> xlsx = pd.ExcelFile('file.xls')
>>> df = pd.read_excel(xlsx, 'Sheet1')


7.3 读取和写入 SQL 查询及数据库表

关于读取和写入 SQL 查询及数据库表的代码如下:

>>> from sqlalchemy import create_engine
>>> engine = create_engine('sqlite:///:memory:')
>>> pd.read_sql("SELECT * FROM my_table;", engine)
>>> pd.read_sql_table('my_table', engine)
>>> pd.read_sql_query("SELECT * FROM my_table;", engine)

read_sql()是 read_sql_table() 与 read_sql_query() 的便捷打包器

>>> pd.to_sql('myDf', engine)


八、调用帮助

当然,在开发过程中遇到的问题肯定是千奇百怪的。除了在技术论坛上发帖求问、求助师兄师姐,我们也要学会自己查看帮助文档
在这里插入图片描述
  调用帮助的代码如下:

>>>help(pd.Series.loc)


九、选择(这里可以参考上一篇文章的 Numpy Arrays 相关部分)

9.1 取值

在取值时,我们可以取序列的值,也可以取数据框的值。以下是取序列值和取数据框子集的代码实现,可以参考一下:

# 取序列的值
>>> s['a']
-5

# 取数据框的子集
>>> df[1:]
 Country Capital Population
 1 India New Delhi 1303171035
 2 Brazil Brasília 207847528


9.2 选取、布尔索引及设置值

9.2.1 按位置

在我们根据需求选择某些数据时,往往涉及到按行与列的位置选择某值,以下给出了具体的代码:

# 按行与列的位置选择某值
>>> df.iloc[[0],[0]]
'Belgium'
>>> df.iat([0],[0])
 'Belgium'

9.2.2 按标签

按行与列的名称选择某值的代码实现如下:

# 按行与列的名称选择某值
>>> df.loc[[0], ['Country']]
 'Belgium'
 >>> df.at([0], ['Country']) 
 'Belgium'

9.2.3 按标签/位置

我们也可以选择某行或者选择某列

# 选择某行
>>> df.ix[2] 
 Country Brazil 
 Capital Brasília 
 Population 207847528

# 选择某列
>>> df.ix[:,'Capital']
 0 Brussels
 1 New Delhi
 2 Brasília 
 >>> df.ix[1,'Capital']
 'New Delhi'

9.2.4 布尔索引

Pandas支持物理顺序进行选取,也支持通过逻辑进行取值。下面给出了几个例子:

>>> s[~(s > 1)] # 序列 S 中没有大于1的值
>>> s[(s < -1) | (s > 2)] # 序列 S 中小于-1或大于2的值
>>> df[df['Population']>1200000000] # 序列 S 中小于-1或大于2的值

9.2.5 设置值

还可以设置索引项的值

>>> s['a'] = 6 # 将序列 S 中索引为 a 的值设为6


十、删除数据

按索引删除序列的值

>>> s.drop(['a', 'c']) # 按索引删除序列的值 (axis=0) 
>>> df.drop('Country', axis=1) # 按索引删除序列的值 (axis=0) 


十一、排序

基本的增删查改都介绍完了,这里再介绍以下排序。下面给出了按索引排序、按某列的值排序、按某列的值排序的另解的代码:

>>> df.sort_index() # 按索引排序
>>> df.sort_values(by='Country') # 按某列的值排序
>>> df.rank() # 按某列的值排序


十二、查询序列与数据框的信息

12.1 基本信息

排序也介绍完了,再来说说查询吧。这里给出了获取行、列索引和获取数据框基本信息的两种方法:

>>> df.shape # (行,列))
>>> df.index # 获取索引
>>> df.columns # 获取索引
>>> df.info() # 获取数据框基本信息
>>> df.count() # 获取数据框基本信息


12.2 汇总

常见的功能实现函数汇总如下:

>>> df.sum() # 合计  
>>> df.cumsum() # 合计 
>>> df.min()/df.max() # 最小值除以最大值
>>> df.idxmin()/df.idxmax() # 最小值除以最大值
>>> df.describe() # 基础统计数据
>>> df.mean() # 平均值
>>> df.median() # 中位数


十三、应用函数

这里给出了几个常用的函数的调用方法:

>>> f = lambda x: x*2 # 应用匿名函数lambda
>>> df.apply(f) # 应用函数
>>> df.applymap(f)  # 应用函数


十四、数据对齐

14.1 内部数据对齐

如有不一致的索引,则使用NA值:

>>> s3 = pd.Series([7, -2, 3], index=['a', 'c', 'd'])
>>> s + s3
 a 10.0
 b NaN
 c 5.0
 d 7.0


14.2 使用 Fill 方法运算

还可以使用 Fill 方法进行内部对齐运算

>>> s.add(s3, fill_value=0)
 a 10.0
 b -5.0
 c 5.0
 d 7.0
>>> s.sub(s3, fill_value=2)
>>> s.div(s3, fill_value=4)
>>> s.mul(s3, fill_value=3)


=## 学习资源推荐

除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

因篇幅有限,仅展示部分资料,添加上方即可获取
一、Python学习路线

image-20230619144606466

python学习路线图1

二、Python基础学习
1. 开发工具

2. 学习笔记

在这里插入图片描述

3. 学习视频

在这里插入图片描述

三、Python小白必备手册

图片

四、数据分析全套资源

在这里插入图片描述

五、Python面试集锦
1. 面试资料

在这里插入图片描述

在这里插入图片描述

2. 简历模板

在这里插入图片描述

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

因篇幅有限,仅展示部分资料,添加上方即可获取
人工智能怎么做数据分析 FineChatBI建立在FineBI的基础上,利用主题模型来定义数据源。用户可以根据需要分析的问题,自由选择切换主题模型。系统会根据用户的选择,提供高质量的数据可靠的问答服务。 阅读详情

相关推荐

零基础小白如何快速入门学习Python数据分析

Python人才需求大,据权威统计机构显示,2020年Python人才缺口高达80万。腾讯、阿里、百度、网易、谷歌、滴滴等大型互联网企业更是大量使用python开发。这一系列政策市场迹象都表明,Python确是当下发展的新趋势。 Python开发的主要领域 网络爬虫:在爬虫领域,Python几乎是霸主地位,想爬啥就爬啥。 数据分析:实现数据可视化,直观的展示数据。 网站开发:借助django,flask框架自己搭建网站 人工智能:谁会成为AI大数据时代的第一开发语言?PythonPython

weixin_47951689的博客 3007

数据分析-深度学习 Day1

李宏毅老师给出了一个可能的解释是:在模型刚开始训练的时候,每个数据点对模型来说都是新的,并没有学到任何东西,或者说并不知晓数据的分布情况,这个时候的 σ 统计是不精准的,模型这个时候如果给与比较大的学习率很容易学偏,并且在一开始的时候很难把错误的点拉回来,因此在模型一开始训练的时候让它慢慢学,等到学到一定的先验知识,对数据分布有了解之后,再加大学习率去学习,至于后面为什么要小下去,这个解释前面的learning rate decay的思想一样。但细心的同学也许会发现,

weixin_43902376的博客 914

人工智能数据分析 Pandas:第一章 简介安装

Pandas 是一个强大的 Python 数据分析处理库,广泛用于数据清洗、探索、操作分析。它建立在 NumPy 之上,提供了高效、灵活且易于使用的数据结构,特别适合处理结构化(表格型)数据。

咚咚王者的博客 2963

手把手教会深度学习数据分析(基于torch的分类问题)

随着信息时代的来临,数据的产生积累呈指数级增长。在这个海量数据的背景下,如何从数据中获取有价值的信息洞见成为了各行各业的重要课题。数据分析作为一种关键的信息处理手段,在理解数据、发现规律、做出决策方面发挥着不可替代的作用。神经网络作为一种人工智能的重要组成部分,由其在数据分析领域的成功应用引起了广泛的关注。神经网络模仿人类大脑的神经元网络结构,通过学习数据中的模式特征,从而实现自主学习预测能力。它能够处理非常复杂的数据关系,解决传统算法难以解决的问题,因此在数据分析领域表现出了强大的优势。

5368

数据分析、数据挖掘、机器学习、神经网络、深度学习人工智能概念区别(入门级别)...

    不多说,直接上干货!       数据分析, 就是对数据进行分析, 得出一些结论性的内容, 用于决策。 分析什么哪? 根据分析现状、 分析原因、 预测未来。 分析现状分析原因, 需要结合业务才能解释清楚。 用到的技术比较简单, 最简单的数据分析工具就是 Excel。 预测未来指的是分析未来一段时间的销售额之类的。 在预测未来方面, 一般用到数据挖掘的技术了。  数据挖掘, 从字面...

weixin_33725722的博客 783

人工智能入门到精通:NumPy 与 Pandas 数据分析基础

本文介绍了Python数据分析两大核心库NumPyPandas的基础知识。NumPy部分讲解了数组创建、操作、向量化运算广播机制,以及丰富的数学函数。Pandas部分介绍了SeriesDataFrame数据结构的基本使用,以及数据读取写入方法。文章包含大量代码示例,帮助读者掌握数组处理、数学运算、数据加载等基础操作,为后续数据分析任务奠定基础。

编程世界如山海,探索不止。 1万+

python数据分析基础005 -pandas详解_pandas入门这一篇就足够了

pandas详解,建议收藏!!

苏凉.py的博客 8104

import pandas as pd什么意思_Pandas数据分析从分析到入门

点击上方“Python之旅”,星标公众号分享好玩的信息来源:雪山飞猪Pandas数据分析从放弃到入门目录什么是Pandas一、如何读取数据库-read_sql二、如何筛选数据三、如何连表-merge四、如何删除一行或一列-drop五、如何分组统计-groupyby六、如何排序-sort_values/sort_index七、如何重建索引-groupby(as_index=False)/r...

weixin_39786534的博客 4万+

快速入门PandasNumPy数据分析

大家好,从商业智能到科学研究,数据分析在许多领域中都是一项重要技能。Python因其可读性强强大的库生态系统而成为最受欢迎的数据分析语言之一,PandasNumPy是重要的基础工具,适用于任何想要分析解释数据的人。本文将探讨如何使用这些库,内容涵盖了从Pandas中的基本数据操作到NumPy中的统计分析。

csdn1561168266的博客 1875

从各角度剖析,Python人工智能关系及应用

人工智能掀起了世界的新一波科技浪潮,如今,你要是不懂点AI、机器学习Python都不好意思说你是现代人。那么Python究竟人工智能什么关系,为什么人工智能Python也给带火了?

xiaoxijinger的博客 2450

AI、ML、DL DS 之间的区别

人工智能 数据分析 数据科学 深度学习 机器学习 神经网络在本文中,我们将了解 AI(人工智能)、ML(机器学习)、DL(深度学习 DS(数据科学)之间的区别。这些术语经常互换使用,但实际上,它们指的是计算机科学数据分析领域内的不同概念。

技术探索驿站 7190

AI入门系列——数据分析

人工智能(Artificial Intelligence,AI)之研究目的是通过探索智慧的实质,扩展人类智能——促使智能主体会听(语音识别、机器翻译等)、会看(图像识别、文字识别等)、会说(语音合成、人机对话等)、会思考(人机对弈、专家系统等)、会学习(知识表示,机器学习等)、会行动(机器人、自动驾驶汽车等)。一个经典的AI定义是:“ 智能主体可以理解数据及从中学习,并利用知识实现特定目标任务的能力。”从技术层面来看,现在所说的人工智能技术基本上就是机器学习方面的(也就是,机器学习技术是入门AI的核心技术

General_zy的博客 4649

python数据分析pandas入门学习(三)汇总统计描述

本文参考《利用Python进行数据分析》的第五章 pandas入门 pandas拥有一组常用的数学统计方法。它们大部分属于约简汇总统计,用于从Series中提取单个值(如summean),或从DataFrame的行或列中提取一个Series。跟对应的Numpy数组方法相比,它们都是基于没有缺失数据的假设而构建的。 idxmin()/idxmax():返回最

helen1313的专栏 2万+

Python数据分析-Pandas快速入门

Python数据分析-Pandas快速入门

showy0的博客 1670

python数据分析的NumpyPandas

Numpy是Python进行科学计算,尤其是数据分析时,所用到的一个基础库。Numpy库的基础:Ndarray。Numpy数组的维数元素数量由数组的型(shape)来决定,数组的型由N个正整数组成的元组来指定,元组的每个元素对应每一维的大小。数组的维统称为轴(axes),轴的数量被称作秩(rank)。Pandas是一个专门用于数据分析的开源Python库。pandas的核心为两大数据结构,分别是Series(一维)DataFrance(多维)。

2202_75530902的博客 1263
上一篇: 教你python破解滑块验证码!记得收藏
下一篇: 我裸辞去面试python岗位了
大模型应用场景
博客等级 码龄5年 7117粉丝 1351原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值