python对比两列数据的不同,python pandas数据分析

  python对比两列数据的不同,python pandas数据分析

  在家为国家做贡献没意思。你最好跟我学Python。

  对了,你喜欢什么文章封面?总用这个感觉有点丑。

  人生苦短,我用Python

  上方门户:

  学习Python数据分析(1):数据分析的基础

  学习Python数据分析(2)熊猫:概述

  首先,引言介绍了熊猫的数据结构。毕竟数据结构是一切的基础。

  Pandas有两种主要的数据结构:序列和数据帧。本文介绍第一个系列。

  先导入模块,把熊猫和Numpy引入代码。如下图。

  importnumpyasnpimportpandaapseries可以很容易理解为一维数组,用来存储整数、浮点数、字符串、Python对象等数据。

  这个概念类似于Java的集合。

  如果不能理解,请看下图。(Excel很好画,灵魂的画师登场)。

  这里的数据就是上面的数据类型,不限于图中的整数。

  如果没有指定索引值,将自动创建一个从0开始的数字类型的索引。比如0,1,2,3…Len(数据)- 1。

  创建系列。使用pd在这里创建。系列功能:

  S=PD.series(NP.random.rand) 5,index=[a , b , c , d , e]) print (s (s (s) print) s.s

  a 0.218164 b 0.153201 c 0.572437d 0.142784 e 0.710664d类型:float 64 index ([ a , b , c , d , e]),d类型= object )0.25554545如果未指定,则直接使用数字索引。

  如果手动指定注意:索引,索引长度必须与数据长度一致。如果不匹配,将引发ValueError异常,如下所示:

  S=PD.series(NP.random.rand) 6,index=[a , b , c , d , e])异常部分:

  错误3360 lengthoffpassed传递的值6,索引含义5字典实例化系列可以由字典实例化。比如如下图。

  D={b: 1, a: 0, c:2}S2=PD.series(d) print) S2)结果如下:

  使用数据为b 1a 0 c 2d type:int 64http://www.Sina.com/dictionary.如果没有设置索引参数,则为Python版本=3.6,Pandas版本=0.23。在Python 3.6或Pandas 0.23上,如果没有设置index参数,Series将按字母顺序对字典的键列表进行排序。

  在上面的例子中,对于当前环境Python 3.6或Pandas 0.23,Series按字母顺序排序,而不是按当前字典顺序,输出结果是[a , b , c]。

  另外,用字典创建数据时,设置索引也会根据索引提取数据中对应的值。如果数据中没有对应的索引,将使用NaN来表示缺失的数据。例如:

  S3=PD.series(d,index=[b , c , d , a]) print) S3)结果如下:

  1.0c 2.0 dnana 0.0 type:float 64标量值实例化数据也支持标量值的实例化。如果数据是标量值,则必须在实例化Series时指定索引。Series根据索引的长度重复此标量值。如下图。

  S4=PD.series(5.index=[a , b , c , d , e]) print) S4)结果如下:

  5.0b 5.0 c 5.0d 5.0e 5.0 type:基于浮动64索引打印(s [0])打印(s [:3])打印)s [s (SG)]]的操作方法

  t;S.median()])print(s[[4,3,1]])结果如下:

  0.481205137399224 a 0.481205 b 0.045604 c 0.108321d类型:Float64d 0.495208 e 0.817171d类型:float 64e 0.817171d 0.495208 b 0.045604d类型:float 64同时,Series还支持索引标签。

  Print (s [a]) s [e]=12。打印结果如下:

  0.481205137399224 a 0.481205 b 0.045604 c 0.108321d 0.495208 e 12.00000 type:float 64如果直接使用不在序列中的索引标签,将会引发KeyError异常:

  # throw KeyError异常# print(s[f])我们可以通过in来判断当前序列是否包含索引标签,如下:

  打印(s中的 e )打印(s中的 f )结果如下:

  True您可以通过get方法获得系列没有的索引标签,并且可以设置返回的默认值:

  print(s . get( f )print(s . get( f ,np.nan))结果如下:

  Nan常用方法# Print e的幂,e是2.71828的常数Print(NP . exp(s))# Print s中每个元素的根(NP . sqrt(s))Print(s . dtype)Print(s . array)Print(s . to _ numpy())。结果如下:

  a 1.618023 b 1.046659 c 1.114406d 1.640840 e 2.264085d类型:float 64a 0.693699 b 0.213555 c 0.329122d 0.7037711 e 0.903975d类型:float 64 float 64 panda sarray[0.4 8120513939.24,0.04 . 39224

  注意:系列之间的操作将根据标签自动对齐数据。

  Print(s[1:] s[:-1])结果如下:

  nanb 0.091207 c 0.216642d 0.990417 e NAND类型:Float64对索引未对齐的序列进行运算,其计算结果是所涉及的所有索引的并集。如果在序列中找不到标签,则运算结果标记为NaN,即缺失值。

  名称系列支持名称属性,我们可以给自己定义的系列起一个自己喜欢的名称:

  S5=pd.series (np.random.randn (5),name= my _ series )print(S5)print(S5 . name)print(ID(S5))结果如下:

  0.4914501 0.9399652 0.8684373-0.0995754 1.866875名称:my _ series,dtype:float 64 my _ series 1492397351368这里,边肖方便地使用id方法打印s5的内存地址。

  类似地,Series为我们提供了重命名方法rename():

  #重命名系列S6=S5。重命名( my _ series _ different )print(ID(S6)),结果如下:

  1923973513680 0.4914501 0.9399652 0.8684373-0.0995754 1.866875名称:my _ Series _ different,dtype: float 641492400065800比较这两个s5和s6,可以看到这两个系列的数据内容相同,名称

  不过有一点需要注意:s5和s6是两个不同的对象,这里打印的不同内存地址也说明了这一点。实际上,这里并没有修改s5的名称,而是创建了一个新对象并使用了新的name属性。

  和往常一样,为了方便起见,所有的示例代码都将上传到代码管理仓库Github和Gitee。

  示例-Github

  示例-Gitee

  参考https://www.pypandas.cn/docs/getting_started/dsintro.html

  您的扫码关注是对边肖坚持原创的最大鼓励:)

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 2020年高考成绩分布表,2020年高考成绩统计,数据分析2020年全国各省高考成绩分布情况
  • ,,python实现数据分析与建模
  • python3 数据分析,python数据分析课堂
  • 《数据思维》,数据分析的思维导图
  • python数据分析就业方向,python数据分析毕业论文
  • python数据分析数据清洗,python中数据清洗
  • 基于Python的数据可视化,python数据分析及可视化处理的第三方库
  • 利用python进行数据分析豆瓣,python数据分析基础和利用python进行数据分析
  • python数据分析数据清洗,用python进行数据清洗
  • python对excel表格数据的统计和分析,python进行excel数据分析
  • 从零开始学Python数据分析与挖掘,自学python数据分析
  • python数据分析结构思维导图,python组合数据类型思维导图
  • 关联规则分析案例,关联规则数据分析题,关联规则的实际案例数据
  • 数据分析与商业数据分析,120个Excel商业数据分析实战案例
  • python数据分析excel读写,python 读取excel数据
  • 留言与评论(共有 条评论)
       
    验证码: