数据分析之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数据分析方面的书.正好去年有段时间股票题材比较火,就在清华出版社夏老师指导下构思了这本书.在这段特殊时期内,夏老 ...
随机推荐
- PHP中静态(static)调用非静态方法详解
1.PHP中可以静态调用非静态方法么? 今天我被问到PHP中可不可以使用 className::methodName() 的方法来调用一个没有声明static的方法.在我的印象中,我好像是见过这种用法 ...
- 【荐】PHP采集工具curl快速入门教程
为什么要用CURL? CURL(Client URL Library Functions)是一个利用URL语法在命令行方式下工作的文件传输工具.它支持很多协议:FTP, FTPS, HTTP, HTT ...
- PHP简单 对象(object) 与 数组(array) 的转换
数组是PHP的灵魂,非常强大,但有时候面向对象编程也是挺方便的,数组 与 对象 之间切换也是常有的事: /** * 数组 转 对象 * * @param array $arr 数组 * @return ...
- python , angular js 学习记录【2】
1.不同scope之间的通信 (1)无父子关系的scope通信: 在需要操作的scope里面定义一个事件,名称为delete_host,参数为data $rootScope.$on('delete_h ...
- awk 双引号vs单引号
centos下面, awk '{...}' 和 awk "{...}" 差别是很大的: [ywt@YuWentao]$ echo "a b c d 1 2 3 4&quo ...
- Android手机截屏方法
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <u ...
- getRealPath("/")弃用
用request.getSession().getServletContext().getRealPath("/");替换getRealPath("/"):
- Deep Learning入门视频(下)之关于《感受神经网络》两节中的代码解释
代码1如下: #深度学习入门课程之感受神经网络(上)代码解释: import numpy as np import matplotlib.pyplot as plt #matplotlib是一个库,p ...
- Git教程推荐
推荐:廖雪峰的官方网站-Git教程,面向初学者,浅显易懂.
- 2. iOS程序的生命周期
程序启动-生命周期 来自: QQ: 853740091 1.首先讲解UIApplication对象 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个 ...