import pandas as pd
%pylab

一.使用numpy创建

df = pd.DataFrame(np.arange(16).reshape((4,4)),
index=list('abcd'),
columns=['one','two','three','four'])
df

二.由Series组成的字典

df3 = pd.DataFrame({'one':pd.Series([0,1,2,3]),
'two':pd.Series([4,5,6,7]),
'three':pd.Series([8,9,10,11]),
'four':pd.Series([12,13,14,15])},
columns=['one','two','three','four'])
df3

自定义行索引;

df4 = pd.DataFrame({'one':pd.Series([0,1,2,3],index=list('abcd')),
'two':pd.Series([4,5,6,7],index=list('abcd')),
'three':pd.Series([8,9,10,11],index=list('abcd')),
'four':pd.Series([12,13,14,15],index=list('abcd'))},
columns=['one','two','three','four'])
df4

总结:

由Series组成的字典,创建Dataframe, columns为字典key, index为Series的标签(如果
Series没有指定标签,则默认数字标签)

三.由字典或者series组成的列表

data = [{"one":1,"two":2},
{"one":5,"two":10,
"three":15}]
df6 = pd.DataFrame(data)
df6

输出为:

指定行索引,列名:

df7 = pd.DataFrame(data, index = ["a", "b"])
df7

df4 = pd.DataFrame(data, columns = ["one", "two", "three"],index=['a','b'])

总结:

由字典组成的列表创建Dataframe, columns为字典的key, index不做指定默认为数字标签,
pandas会自动为行,列索引排序;但是如果在pd.dataframe()的参数中指定了index和columns的值,行和列的索引就会按照指定的值排列

四.由字典组成的字典

data = {
"Jack":{"math":90, "english":89, "art":78},
"Marry":{"math":82, "english":95, "art":96},
"Tom":{"math":85, "english":94}
}
df1 = pd.DataFrame(data)
df1

总结:

字典的健值作为dataframe的columns
如果没有指定index参数的值,行索引使用默认的数字索引
每个序列的长度必须相同
同样的,pandas会对会对列索引排序,如果显示的传入columns参数,将按照传入的值得顺序显示

创建DateFrame的常用四种方式的更多相关文章

  1. xml常用四种解析方式优缺点的分析×××××

    xml常用四种解析方式优缺点的分析 博客分类: xml   最近用得到xml的解析方式,于是就翻了翻自己的笔记同时从网上查找了资料,自己在前人的基础上总结了下,贴出来大家分享下. 首先介绍一下xml语 ...

  2. Java创建线程的四种方式

    Java创建线程的四种方式 1.继承Thread类创建线程 定义Thread类的子类,并重写该类的run方法,run()方法的内容就是该线程执行的内容 创建Thread子类的实例,即创建了线程对象. ...

  3. Delphi中动态创建窗体有四种方式

    Delphi中动态创建窗体有四种方式,最好的方式如下: 比如在第一个窗体中调用每二个,主为第一个,第二个设为动态创建 Uses Unit2; //引用单元文件 procedure TForm1.But ...

  4. linux创建文件的四种方式(其实是两种,强行4种)

    linux创建文件的四种方式: 1.vi newfilename->i->编辑文件->ESC->:wq! 2.touch newfilename 3.cp sourcePath ...

  5. SWT组件添加事件的四种方式

    在我们CS日常开发过程中会经常去为组件添加事件,我们常用的为AWT与SWT.SWT的事件模型是和标准的AWT基本一样的.下面将按照事件的四种写法来实现它. 一.匿名内部类的写法 new MouseAd ...

  6. 关于this绑定的四种方式

    一.前言 我们每天都在书写着有关于this的javascript代码,似懂非懂地在用着.前阵子在看了<你不知道的JavaScript上卷>之后,也算是被扫盲了一边关于this绑定的四种方式 ...

  7. .net core 2.x - 缓存的四种方式

    其实这些微软docs都有现成的,但是现在的人想对浮躁些,去看的不会太多,所以这里就再记录下 ,大家一起懒一起浮躁,呵呵. 0.基础知识 通过减少生成内容所需的工作,缓存可以显著提高应用的性能和可伸缩性 ...

  8. Map集合遍历的四种方式理解和简单使用-----不能for循环遍历

    Map集合遍历的四种方式理解和简单使用   ~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值 1:无非就是通过map.keySet()获取到值,然后 ...

  9. Copy ArrayList的四种方式

    目录 简介 使用构造函数 使用addAll方法 使用Collections.copy 使用stream 总结 Copy ArrayList的四种方式 简介 ArrayList是我们经常会用到的集合类, ...

随机推荐

  1. windows 禁用中文输入法(转)

    源博客地址:http://blog.csdn.net/xie1xiao1jun/article/details/17913967 windows 程序禁用中文输入法方法:1.添加windows头文件及 ...

  2. CentOS7基于http方式搭建本地yum源

    1.创建yum软件保存目录[root@localhost ~]# mkdir -p /www/share/yum 2. 修改yum配置文件先备份yum配置文件,修改yum配置文件中yum软件包保存目录 ...

  3. 虚拟 DOM 到底是什么?

    虚拟 DOM 到底是什么? 作者:wangshengliang 注意:由于文章太长,对文章有删减,但是不会影响整体阅读 是什么? 虚拟 DOM (Virtual DOM )这个概念相信大家都不陌生,从 ...

  4. web前端知识点

    一.CSS问题 1.flex布局 display:flex; 在父元素设置,子元素受弹性盒影响,默认排成一行,如果超出一行,按比例压缩 flex:1; 子元素设置,设置子元素如何分配父元素的空间,fl ...

  5. 由sqli-labs/Less-5学习各种基础盲注技巧

    本文为本人在学习中的总结,仅涉及基础的盲注技巧,可能多有疏漏之处,欢迎指教. 另外本人博客的SQL注入分类下有一些方面的详细讲解,在此只介绍简单的使用. 0x00.介绍一下本人对盲注的总结. 盲注就是 ...

  6. OpenPose 开源库安装

    一.下载openpose下载openpose 使用Git直接下载openpose git clone https://github.com/CMU-Perceptual-Computing-Lab/o ...

  7. 倍增求LCA(最近公共祖先)

    P3379 [模板]最近公共祖先(LCA) 题目描述: 读入一棵以1为根的树,q次询问,每次给定x和y,问x和y的最近公共祖先是哪一个节点. 树的读入格式:n-1行每行两个整数x.y,表示一条连接x和 ...

  8. HDU - 3068 最长回文(manacher算法)

    题意:给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度. 分析: manacher算法: 1.将字符串中每个字符的两边都插入一个特殊字符.(此操作的目的是,将字符串 ...

  9. Flink集群模式部署及案例执行

    一.软件要求 Flink在所有类UNIX的环境[例如linux,mac os x和cygwin]上运行,并期望集群由一个 主节点和一个或多个工作节点组成.在开始设置系统之前,确保在每个节点上都安装了一 ...

  10. 自定义环形进度条RoundProgressBar

    一.效果图: Canvas画圆环说明: 圆环宽度不必在意,只是画笔宽度设置后达到的效果. 二.实现步骤 1.自定义View-RoundProgressBar 2.设置属性resources(decle ...