另一种常见的数据形式是嵌套字典(也就是字典的字典):

pop = {'Nevada':{2001:2.4,2002:2.9},'Ohio'  :{2000:1.5,2001:1.7,2002:3.6}}

如果将它传给DataFrame,它就会被解释为:外层字典的键作为列,内层键则作为行索引:

frame3 = pd.DataFrame(pop)
print frame3
输出结果Nevada  Ohio
2000     NaN   1.5
2001     2.4   1.7
2002     2.9   3.6

当然,也可以对该结果进行转置:

print frame3.T
输出结果2000  2001  2002
Nevada   NaN   2.4   2.9
Ohio     1.5   1.7   3.6

内层字典的键会被合并、排序以形成最终的索引。如果显式指定了索引,则不会这样:

frame4 = pd.DataFrame(pop,index=[2001,2002,2003])
print frame4
输出结果Nevada  Ohio
2001     2.4   1.7
2002     2.9   3.6
2003     NaN   NaN

由Series组成的字典差不多也是一样的用法:

pdata = {'Ohio':frame3['Ohio'][:2],
         'Nevada':frame3['Nevada'][:2]}
frame4 = pd.DataFrame(pdata)
print frame4
      Nevada  Ohio
2000     NaN   1.5
2001     2.4   1.7

如果设置了DataFrame的index和column的name属性,则这些信息也会被显示出来:

frame3.index.name = 'year'
frame3.columns.name = 'state'
print frame3
输出结果
state  Nevada  Ohio
year
2000      NaN   1.5
2001      2.4   1.7
2002      2.9   3.6

跟Series一样,values属性也会以二维ndarray的形式返回DataFrame中的数据:

print frame3.values
输出结果
[[ nan  1.5][ 2.4  1.7][ 2.9  3.6]]

如果DataFrame各个列的数据类型不同,则值数组的数据类型就会选用能兼容所有列的数据类型

pandas学习笔记-DataFrame(2)相关推荐

  1. pandas学习笔记:pandas.Dataframe.rename()函数用法

    pandas学习笔记:pandas.Dataframe.rename()函数用法 pandas.Dataframe.rename()函数主要是用来修改Dataframe数据的行名和列名. 主要用到的参 ...

  2. Pandas学习笔记(一)

    Pandas学习笔记一 Pandas数组读取 读取csv.tsv.txt文件 读取excel文件 读取mysql数据表 Pandas数据结构 创建Series的几种方法 根据标签查询Series数据 ...

  3. pandas学习笔记之DateFrame

    pandas学习笔记之DateFrame 文章目录 pandas学习笔记之DateFrame 1.DateFrame的创建 1)认识DataFrame对象 2)由二维列表创建(默认index和colu ...

  4. 数据分析之pandas学习笔记(六)(层次化索引、重塑、轴向旋转、行列变换、合并表数据)

    数据分析之Pandas学习笔记(六)(层次化索引.重塑.轴向旋转.行列变换.合并表数据) level层次化索引 unstack()与stack()进行重塑,即:行列索引变换 swaplevel()交换 ...

  5. [Pandas 学习笔记] - No.1 pandas学习笔记

    pandas学习笔记 pandas是基于numpy开发出的数据分析包,用于高效地操作大型数据集.pandas的数据结构有三种 分别为 series,dataframe和panel,对应一维,二维,三维 ...

  6. pandas学习笔记之Series

    pandas学习笔记之Series 文章目录 pandas学习笔记之Series pandas中Series的创建 1)用python中的列表list创建: 2)用numpy数组创建 3)用pytho ...

  7. pandas学习笔记(三):数据的变换与数据的管理

    注:学习笔记基于文彤老师的pandas的系列课程 课程链接:https://study.163.com/course/courseMain.htm?courseId=1005124008&sh ...

  8. Pandas 学习笔记一

    文章目录 Pandas 学习 核心数据结构 DataFrame 属性 Panel Series 基本数据操作 运算 Pandas 学习 核心数据结构 DataFrame import numpy as ...

  9. 数据处理Pandas学习笔记(一)

    import pandas as pd pandas值series创建 t = pd.Series([1, 2, 31, 12, 3, 4]) t 0 1 1 2 2 31 3 12 4 3 5 4 ...

  10. 数据分析(七)之pandas学习【dataFrame的使用】

    数据分析学习线路图 2.dataFrame的基本用法 2.1 dataFrame的创建 方法2: import numpy as np import pandas as pdt = pd.DataFr ...

最新文章

  1. 爬虫的系统框架组成-控制器
  2. FBI再度要求苹果协助为波士顿黑帮成员的iPhone解锁
  3. python中is与==的差别
  4. 距离QCon纽约还有3个礼拜:新的演讲、播客节目和研讨会
  5. 【C# interface接口】对接口的理解、接口的使用方式(最通俗的解释)
  6. 计算机硬盘应该什么格式化,怎么把电脑硬盘全部格式化?计算机硬盘格式,需要使用diskgenius分区工具删除所有分区...
  7. SpringBoot集成Elasticsearch实现博客高亮搜索
  8. scala 字符串转换数组_如何在Scala中将十六进制字符串转换为字节数组?
  9. DeeCamp2019年笔试题A卷
  10. 如何利用FineBI做财务分析
  11. hive多个表join_8个Hive数据仓工具面试题锦集!
  12. uni-app中v-html中的元素添加样式
  13. 细胞自动机 通用计算机,细胞自动机论
  14. PLC可编程控制器的应用
  15. 云游戏的架构设计和技术实现
  16. 安卓防止微信调整字体大小
  17. Elasticsearch:Elasticsearch 开发入门 - Golang
  18. Error: The required parameter ‘channelID‘ is empty. Rerun the command with -C flag
  19. 《黑客狙击》--一部值得观看的国产高科技犯罪电影
  20. Windows上获取cpu info, cpuid, cpu id 方法整理

热门文章

  1. Matlab求一阶导数
  2. java 全局快捷键_java全局快捷键--jintellitype
  3. Aryaka荣获2016年度全球最具影响力SD-WAN解决方案奖
  4. 空间句法(二)——Axwoman 6.0
  5. Centos7 Snapper快照备份
  6. Verilog 按键消抖的一些分析和想法
  7. 5G消息、聊天机器人和小程序
  8. 玩转算法与数据结构 C++描述 选择排序
  9. 关于Hibernate中调用集合类时出现的 the owning Session was closed 错误解决方案
  10. 思科2960交换机配置命令