浅析大熊猫数据结构中的DataFrame

  

DataFrame类型类似于数据库表结构的数据结构,其含有行索引和列索引,可以将DataFrame想成是由相同索引的系列组成的Dict类型。在其底层是通过二维以及一维的数据块实现。

  

1。DataFrame对象的构建

  

1.1用包含等长的列表或者是NumPy数组的字典创建DataFrame对象

        在[68]:大熊猫作为pd导入      在[69]:从熊猫进口系列,DataFrame      #建立包含等长列表的字典类型   在[70]:data=https://www.yisu.com/zixun/{“状态”:[“俄亥俄”、“俄亥俄”、“俄亥俄”,“内华达”,“内华达”),“年”:[2000、2001、20   …:02年、2001年、2002年),“流行”:[1.5,1.7,3.6,2.4,2.9)}   在[71]:数据   [71]:   {“流行”:[1.5,1.7,3.6,2.4,2.9),   “状态”:[“俄亥俄”、“俄亥俄”、“俄亥俄”,“内华达”,“内华达”),   “年”:[2000、2001、2002、2001、2002]}   #建立DataFrame对象   在[72]:第一?DataFrame(数据)   #红色部分为自动生成的索引   在[73]:第一帧   [73]:   今年流行状态   0 1.5俄亥俄州2000   1 1.7俄亥俄州2001   2 3.6俄亥俄州2002   3 2.4内华达州2001   4 2.9内华达州2002      

在建立过程中可以指点列的顺序:
  

        在[74]:第一?DataFrame(数据,列=[“年”,“状态”,“流行”))      在[75]:第一帧   [75]:   年国家流行   0 2000俄亥俄州1.5   俄亥俄州1 2001 1.7   俄亥俄州2002 3.6   3 2001年内华达州2.4   4 2002年内华达州2.9   之前      

和系列一样,DataFrame也是可以指定索引内容:
  

        在[76]:印第安纳州=(“一个”,“两个”,“三”、“四”,“5”)   在[77]:第一?DataFrame(数据、索引=印第安纳州)      在[78]:第一帧   [78]:   今年流行状态   一个1.5俄亥俄州2000   两个1.7俄亥俄州2001   三3.6俄亥俄州2002   四2.4内华达州2001   五2.9内华达州2002      之前      

1.2。用由字典类型组成的嵌套字典类型来生成DataFrame对象

  

当由嵌套的字典类型生成DataFrame的时候,外部的字典索引会成为列,名内部的字典索引会成为行名。生成的DataFrame会根据行索引排序
  

        在[84]:流行={“内华达”:{2001:2.4,2002:2.9},“俄亥俄”:{2000:1.5,2001:1.7,2002:3.6}}      在[85]:frame3=DataFrame(流行)      在[86]:frame3   [86]:   内华达俄亥俄州   2000南1.5   2001年2.4 - 1.7   2002年2.9 - 3.6      之前      

除了使用默认的按照行索引排序之外,还可以指定行序列:
  

        在[95]:frame3=DataFrame(流行,[2002、2001、2000])      在[96]:frame3   [96]:   内华达俄亥俄州   2002年2.9 - 3.6   2001年2.4 - 1.7   2000南1.5      之前      

1.3其它构造方法:

  

浅析大熊猫数据结构中的DataFrame

  

2。DataFrame内容访问

  

从DataFrame中获取一列的结果为一个系列,可以通过以下两种方式获取:
  

        #以字典索引方式获取   在[100]:第一帧(“状态”)   [100]:   一个俄亥俄州   俄亥俄州的两   三个俄亥俄   四个内华达   五内华达州   名称:状态,dtype:对象   #以属性方式获取   在[101]:frame1.state   [101]:   一个俄亥俄州   俄亥俄州的两   三个俄亥俄   四个内华达   五内华达州   名称:状态,dtype:对象   之前      

也可以通过第九获取一行数据:
  

        在[109]:第一帧。第九(“一”)#或者是frame1.ix [0]   [109]:   流行1.5   州俄亥俄   2000年   名称:>   在[119]:第一帧(“状态”)   [119]:   一个俄亥俄州   俄亥俄州的两   三个俄亥俄   四个内华达   五内华达州   名称:状态,dtype:对象      第一帧[120]:[“状态”][0]   [120]:“俄亥俄”      在[121]:第一帧(“状态”)(“一”)   [121]:“俄亥俄”      之前      

先指定列再指定行:
  

        在[125]:frame1.ix [0]   [125]:   流行1.5   州俄亥俄   2000年   名称:>   #增加一列值   在[131]:第一帧(“债务”)=10      在[132]:第一帧   [132]:   今年流行国家债务   一个1.5俄亥俄州2000 10   两个1.7俄亥俄州2001 10   三3.6俄亥俄州2002 10   四2.4内华达州2001 10   五2.9内华达州2002 10      #更改一列的值   第一帧[133]:[“债务”]=np.arange (5)      在[134]:第一帧   [134]:   今年流行国家债务   一个俄亥俄州1.5 2000 0   两个1.7俄亥俄州2001 1   三3.6俄亥俄州2002 2   四2.4内华达州2001 3   五2.9内华达州2002 4

浅析大熊猫数据结构中的DataFrame