之前的文章里面谈到过,我从R转到Python上,一个很大的不习惯就是R的数据结构比较简单,但是Python的数据类型比较多,很容易就令人头脑混乱。但是今天学习了一下Udacity的课程,顿时就清楚多了。

Python最基础的数据类型包括数组、列表、字典比较常见的。而Numpy和Pandas的数据类型是在基础数据类型上建立,彼此相关,又彼此不同。

Numpy里面最基本的就是一维的对象np代指,这点我认为和列表list基本没有什么不同,很多操作(比如各种的for循环)在list上实现,同时也完全可以在numpy对象实现。但是numpy之所以是numpy,最重要的一点就是numpy向量化操作的特点,这点和R语言里面还是比较类似,当然Matlab几乎也是向量化操作。比较基础的就是加减乘除的运算,当然还有一点比较容易被忽略的就是np对象和if条件的使用。

例如 a=np.array([1,2,3,4,-1,-2,-3,-4])  ,b=np.array([-1,3,9,0,-2,9,3,-5)],想要找到a,b里面到底有多少个对元素在相同位置上正负号一致?

这里我要挖个坑,未来可能会做更多的练习,会把我遇上的情况分享一下。

Pandas里面最基本的对象叫做Series。Series 和 np 有很多相类点,例如position 索引、切片、循环(for),以及一些基础函数X.mean(),X.max(),X.argmax()。用法几乎是一致的。要说最大的不同点,我认为就是索引。Pandas的索引有两种模式,一种是位置索引,例如a[0]、或者是a.iloc[0],iloc的意思是integer-location based indexing for selection by position ,还有一种是key索引(我自己这么叫的),例如a.loc['title'] ,loc的意思是 label-location based indexer for selection by label。这两种不同的索引暴露了Series的本质,就是pandas对象本质上是字典和列表的混合,这点很重要。

OK,这里做一个小结:np对象最重要特点向量化运算,pandas对象最重要特点是字典和列表混合。

But,我在学习过程中还是有很多numpy & pandas 衍生出来的问题。嗯,今天就碰到了!

Q1:有些函数忘记到底是应用在pd 还是 np 上?

A1:本来是想要去doc里面查查,一个个对比看看。现在想着索性还是先了解一下两个库里面常用的函数或者属性。


pandas常用属性

dataframe 常用属性

numpy 常用属性

可以这么理解,pandas常用的属性基本都是数据操作类的;而numpy基本上都是数据基础运算的,还有一个神级Lib Scipy 里面的常用函数是统计&优化类的。

scipy 常用函数

eg.分组统计、缺失值处理都是pd的管辖,生成随机数等是numpy的管辖。

今天学了.dropna , .fillna 都是pd的属性。

说实话,目前并没有体会出numpy有什么卓越的优越性,这个等我慢慢体会,这也需要是一篇文章!

来源:https://www.douban.com/note/635632989/

Python 学习 —— Numpy 、Pandas 傻傻分不清楚相关推荐

  1. Python学习日记-pandas操作学习

    Python学习日记-pandas模块学习 根据需求筛选数据 绘制柱状图-利用pandas绘制 绘制柱状图-利用matplotlib绘制 绘制柱状图-两组数据比较 绘制柱状图-叠加柱状图 绘制饼状图 ...

  2. [转载] Python 学习 - Numpy

    参考链接: Python中的numpy.iscomplex Numpy 学习 Ndarray对象 特点 N 维数组对象 一系列同类型数据的集合 下标从0开始  每个元素在内存中占有相同存储大小  由什 ...

  3. [机器学习]Python中Numpy,Pandas,Matplotlib,Scipy,Seaborn介绍

    Python做数据挖掘很强大,最近几年很火的机器学习以及较为前沿的自然语言处理也会选用Python作为基础工具. 其中python做数据挖掘足够强大,不用怀疑. #1. Numpy介绍 Numpy是P ...

  4. python学习笔记——pandas

    from pandas  import Series,DataFrame import pandas as  pd import numpy as np 行用0,列用1 (一) Series 一种类似 ...

  5. python学习——numpy库

    属性: 维度 元素类型 大小 形状 创建一维 : np.arange np.linspace 注意range()只能for循环 创建零数组 一数组 单位数组 数组拼接: hstack vstack s ...

  6. Python学习——Numpy

    Numpy 文章目录 Numpy Ndarray 对象 数据类型对象 (`dtype`) 创建数组 切片和索引 广播 统计函数 排序 搜索 计数函数 Matplotlib 常用操作汇总 Ndarray ...

  7. Python学习笔记-pandas应用

    学习来源:https://www.bilibili.com/video/BV1UJ411A7Fs(b站真是个神奇的地方--) 目录 一.读取数据 DataFrame读数 查询 apply方法 assi ...

  8. python学习--numpy的数组

    numpy中的数组类型为ndarry 创建 # -*- coding: utf-8 -*- import numpy as np#用列表或元组创建 a = np.array([[1,2,3],[4,5 ...

  9. python学习——numpy基础操作

    numpy 基础操作 1 创建数组 2 数组常用属性和函数 3 数组元素增删 4 元素查找 5 数学运算 6 数组切片 1 创建数组 import numpy as np #以后numpy简写为np ...

最新文章

  1. 通过ArcCatalog连接ArcGIS Server的种种问题
  2. 170多个Ionic Framework学习资源(转载)
  3. 金九银十中,看看这31道Android面试题
  4. Redis一个命令请求从发送到完成的步骤以及初始化服务器步骤
  5. 长沙营智:PolarDB助力长沙营智提速资讯搜索业务
  6. 万字长文剖析 APM 系统?如何设计与实现?
  7. 解决linux系统WIFI无法使用5GHz频率的问题
  8. 【es】es 编译 jar hell!
  9. libz.so.1: cannot open shared object file: No such file or directory
  10. Ubuntu 16.04虚拟环境virtualenv搭建
  11. python海龟作图不用循环_10分钟,利用聪明的小海龟可以制作出绚丽的视觉效果,你信不信呢...
  12. java 实现微信授权登陆
  13. MT4 CRM 系统开发(一)
  14. 阿里云推出全球应用加速解决方案,快速提升跨域应用访问体验
  15. 天正暖通天圆地方在哪_天圆地方说与属性开篇第一数理
  16. 东北育才 第6天和第7天
  17. 专题·莫比乌斯函数与欧拉函数【including 整除分块,积性函数,狄利克雷卷积,欧拉函数,莫比乌斯函数,莫比乌斯反演
  18. html前端使用js生成pdf文件并保存到本地
  19. 怎样卸载deepin系统_Deepin深度系统系统卸载教程 - 安装卸载 - Deepin深度系统用户手册...
  20. 继承体系和super关键字

热门文章

  1. 实现人脸识别“干货”
  2. 生产环境下,oracle不同用户间的数据迁移。第一部分
  3. 探寻新的治疗方法,研究人员用VR可视化DNA结构
  4. asp.net缓存机制
  5. jquery高版本全选与全部选无法正常工作
  6. C#调用C++Dll封装时遇到的一系列问题
  7. 站点某些网页想显示母版页内的用户控件,某些网页不想显示,怎样实现
  8. 二、使用rails3.0自带的数据检查功能检查输入数据
  9. c# 扩展方法奇思妙用变态篇四:string 的翻身革命
  10. 明星不是梦#利用Python进行网站日志分析