数据分析之pandas入门
一、数据结构
1. Series
1.1 序列构造和调用
Series是一种类似于一维数组的对象,它由一组数据和索引共同组成,可以通过索引的方式来选取Series中的单个或一组值,常用的构造函数为obj2=Series([4,7,-3,3], index=['d','b','a','c'])
对于index而言,默认参数可以不写,可以缺省,若缺省则使用默认的索引从0:N-1
字典<——>Series:可以通过Series函数直接将字典转换成Series(Series(dict))
1.2 自动对齐
Series在计算的过程中能够自动对齐不同索引的数据进行计算。
1.3 属性
index,value,name
通过obj2.index和obj2.value的属性方法进行调用和赋值进行修改,同时可以通过具体的索引值获取数据obj2['a']
对于name属性而言,Series本身以及其索引都具备name属性。obj2.name= 和 obj2.index.name= 进行赋值和调用。
2.DataFrame
2.1 数据构建调用
DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以有不同的数值类型,同时具备行索引和列索引。
最常用的构建方法是传入等长数列或者Numpy数组组成的字典:
DataFrame(data,columns,index)通过columns来交换列的顺序,通过index来设置行索引
可以通过frame.state 或者frame['pop']来获取列,列获取类型为Series,同时name存在。
创建新列:为不存在的列赋值,就能创建新的列
删除列:del frame['year']
2.2 赋值及操作
可以多整列操作赋值相同值,如借助frame['pop'] = 1.5。或者借助Series进行赋值操作,这样的赋值将准确匹配DataFrame的索引。
创建新列:为不存在的列赋值,就能创建新的列
删除列:del frame['year']
1.3 属性
index,columns,value,name
通过obj2.index和obj2.value的属性方法进行调用和赋值进行修改,同时可以通过具体的索引值获取数据obj2['a']
对于name属性而言,Series本身以及其索引都具备name属性。frame.columns.name= 和 frame.index.name= 进行赋值和调用。
对于value这一方法而言,能去除行索引和列索引得到一个二维数组。
二、基本功能
1.1 重新索引(重新排序)
对于Series而言,会根据新的索引对原先的顺序安好新的索引进行排序。obj.reindex(['a','b']).
对于reindex可能需要特殊的插值处理,因此利用method可以达到该目的。obj3 = Series([range(6), method='ffill']). 列出了可用的method选项:ffill或pad前向填充值,bfill或backfill后向填充。
1.1 丢弃指定轴上的项
1.drop的操作后原数据并不发生变化。axis =1表示列索引。行索引为axis=1可省略。
索引、选取和过滤
利用标签的切片运算与普通的Python切片运算不同,其末端是包含的。
上述实现是通过切片或者布尔数组进行取行。
data.ix['Colorado',['two','three']]
通过ix进行调用,最后获得一个Series。
数据分析之pandas入门的更多相关文章
- 利用python进行数据分析之pandas入门
转自https://zhuanlan.zhihu.com/p/26100976 目录: 5.1 pandas 的数据结构介绍5.1.1 Series5.1.2 DataFrame5.1.3索引对象5. ...
- Python数据分析之pandas入门
一.pandas库简介 pandas是一个专门用于数据分析的开源Python库,目前很多使用Python分析数据的专业人员都将pandas作为基础工具来使用.pandas是以Numpy作为基础来设计开 ...
- 利用Python进行数据分析——pandas入门
利用Python进行数据分析--pandas入门 基于NumPy建立的 from pandas importSeries,DataFrame,import pandas as pd 一.两种数据结构 ...
- < 利用Python进行数据分析 - 第2版 > 第五章 pandas入门 读书笔记
<利用Python进行数据分析·第2版>第五章 pandas入门--基础对象.操作.规则 python引用.浅拷贝.深拷贝 / 视图.副本 视图=引用 副本=浅拷贝/深拷贝 浅拷贝/深拷贝 ...
- [读书笔记] Python数据分析 (五) pandas入门
pandas: 基于Numpy构建的数据分析库 pandas数据结构:Series, DataFrame Series: 带有数据标签的类一维数组对象(也可看成字典) values, index 缺失 ...
- 利用python进行数据分析--pandas入门2
随书练习,第五章 pandas入门2 # coding: utf-8 # In[1]: from pandas import Series,DataFrame import pandas as pd ...
- 利用python进行数据分析--pandas入门1
随书练习,第五章 pandas入门1 # coding: utf-8 # In[1]: from pandas import Series, DataFrame # In[2]: import pa ...
- Python 数据处理库 pandas 入门教程
Python 数据处理库 pandas 入门教程2018/04/17 · 工具与框架 · Pandas, Python 原文出处: 强波的技术博客 pandas是一个Python语言的软件包,在我们使 ...
- 向大家介绍我的新书:《基于股票大数据分析的Python入门实战》
我在公司里做了一段时间Python数据分析和机器学习的工作后,就尝试着写一本Python数据分析方面的书.正好去年有段时间股票题材比较火,就在清华出版社夏老师指导下构思了这本书.在这段特殊时期内,夏老 ...
随机推荐
- HDU 3966 Aragorn's Story 树链剖分
Link: http://acm.hdu.edu.cn/showproblem.php?pid=3966 这题注意要手动扩栈. 这题我交g++无限RE,即使手动扩栈了,但交C++就过了. #pragm ...
- IOS单元测试,OCMock
1.环境搭建 使用官方推荐,手动搭建.. 1.下载所需文件 http://ocmock.org/download/ 根据自己的需要下载不同的版本. 打开iOS library文件夹,里面就有需要用到的 ...
- C#获取命令行输出内容的方法
获取命令行输出内容的方式有传统和异步两种方式. 传统方式: public static void RunExe(string exePath, string arguments, out string ...
- ++i vs i++
[分析] i++与++i哪个效率更高? (1)在内建数据类型的情况下,效率没有区别: (2)在自定义数据类型Class的情况下,++i效率更高! 自定义数据类型的情况下:++i返回对象的引用:i++总 ...
- testng 教程之使用参数的一些tricks配合使用reportng
前两次的总结:testng annotation生命周期 http://www.cnblogs.com/tobecrazy/p/4579414.html testng.xml的使用和基本配置http: ...
- SQLServer2008设置 开启远程连接
SQLServer2008设置 开启远程连接 前一段时间,学生分组做项目,使用SVN工具,要求功能使用存储过程,在数据库这块出现这么一个问题: A学生在他的数据库上添加了存储过程,需要其他的B,C,D ...
- Pycharm用Ctrl+鼠标滚轮调节代码字体大小
File --> Setting --> Editor --> General --> 勾选Change font size (zoom) with Ctrl+Mouse W ...
- 在SQLSERVER2008中建立数据库复制碰到的问题
一是开始用FTP快照方式,设置好后运行中无法传输快照,应该是FTP设置中的问题,有待进一步研究.后改用文件夹共享方式,出现无法取得文件的错误,原因是订阅服务器上的快照文件夹设为默认设置,改成设置为备用 ...
- JavaSE基础01
JavaSE基础篇01 ------从今天开始,我就学习正式java了,O(∩_∩)O哈哈~,请大家多指教哦 一.Windows常见的dos命令 操作dos命令: win7 --->开始 --- ...
- SQL入门语句之ORDER BY 和GROUP BY
一.SQL入门语句之ORDER BY ORDER BY 是用来基于一个或多个列按升序或降序顺序排列数据 1.从数据库表获取全部数据按字段A的升序排列 select *from table_name o ...