pandas 初识(一)
基本内容
Series:
Series 是有一组数据(numpy的数据类型 numpy.ndarray)以及一组数据标签(即索引)组成,可以看成一个一个定长的有序字典(索引值到数据值的一个映射)
obj = Series([4, 7, -5, 3])
print(type(obj))
print(type(obj.values))
obj.values
<class 'pandas.core.series.Series'>
<class 'numpy.ndarray'>
array([ 4, 7, -5, 3], dtype=int64)
- 创建:
- 通过序列 + index,index 默认为自然数
obj2 = Series([4, 7, -5, 3], index=['d', 'b', 'a', 'c'])
obj2.values.tolist()
- 通过字典
obj2 = Series({'d': 4, 'b': 7, 'a': -5, 'c': 3})
obj2.to_dict()
DataFrame
- 介绍:
- 表型数据结构,可以看做有多个拥有同一索引的Series构成的字典
- 创建:
- 通过字典(平铺) + index + columns :
data = {
'state': ['a', 'a', 'a', 'b', 'b'],
'year': [2000, 2001, 2002, 2001, 2002],
'pop': [1.5, 1.7, 3.6, 2.4, 2.9]
}
df = DataFrame(data=data)
print("df=", df)
注: index, columns 均为list, 如果没有给定,则为默认, index 默认为自然数,columns 默认为按照它排序
- 通过嵌套字典:
data = {
'state': {0: 'a', 1: 'a', 2: 'a', 3: 'b', 4: 'b'},
'year': {0: 2000, 1: 2001, 2: 2002, 3: 2001, 4: 2002},
'pop': {0: 1.5, 1: 1.7, 2: 3.6, 3: 2.4, 4: 2.9}
}
df = DataFrame(data=data)
print("df=", df)
state year pop
a a 2000 1.5
b a 2001 1.7
c a 2002 3.6
d b 2001 2.4
e b 2002 2.9
- 二维 ndarray, 数组、列表,元组,可以加入行,列label
data3 = [['a', 2000, 1.5],
['a', 2001, 1.7],
['a', 2002, 3.6],
['b', 2001, 2.4],
['b', 2002, 2.9]]
- 列(特征访问),默认的访问对象, 结果为一个Series:
- 通过属性的方式: df.state
- 通过字典的方式: df["state"]
- 行访问,通过访问索引,结果为一个Series:
- ix:被下面2个代替
- loc : 访问的索引值,即行值 index label
- iloc : 访问的索引行,即行号,index position
- 索引的重置:
- reindex(列表a, method="ffill"):按照a进行重新排列样本数据,源索引不存在,样本添加缺少值, method 缺失值的填充方式
- set_index(n) : 参数为字符串(列)或者列的序列,集合。函数会将一个或多个列转换为行索引,并创建新的DataFrame
- reset_index() : 以当前顺序删除旧的索引,重新生成新索引(自然数)
pandas 初识(一)的更多相关文章
- pandas初识
pandas初识 1.生成DataFrame型的数据 import pandas as pd import numpy as np dates = pd.date_range('20130101',p ...
- pandas 初识(四)
Pandas 和 sqlalchemy 配合实现分页查询 Mysql 并获取总条数 @api.route('/show', methods=["POST"]) def api_sh ...
- pandas 初识(三)
Python Pandas 空值 pandas 判断指定列是否(全部)为NaN(空值) import pandas as pd import numpy as np df = pd.DataFrame ...
- pandas 初识(二)
基本统计 pivot_table(数据透视表 ): 使用appfunc, 按不同index分类统计各特征values的值 df.pivot_table(index="Pclass" ...
- pandas 初识(六)-可视化
Pandas 在一张图中绘制多条线 import pandas as pd import numpy as npimport matplotlib.pyplot as plt df = pd.Data ...
- pandas 初识(五)
1. 如何实现把一个属性(列)拆分成多列,产生pivot,形成向量信息,计算相关性? 例: class_ timestamp count 0 10 2019-01-20 13:23:00 1 1 10 ...
- numpy最后一部分及pandas初识
今日内容概要 numpy剩余的知识点 pandas模块 今日内容详细 二元函数 加 add 减 sub 乘 mul 除 div 平方 power 数学统计方法 sum 求和 cumsum 累计求和 m ...
- 日常记录-Pandas Cookbook
Cookbook 1.更新内容 2.关于安装 3.Pandas使用注意事项 4.包环境 5.10分钟Pandas初识 6.教程 7.Cookbook 8.数据结构简介 9.基本功能 10.使用文本数据 ...
- Pandas学习整理与实践
Part 1. Pandas初识 作为一款数据处理工具,Pandas本身集成了Numpy(数据计算处理)及matplotlib(绘图),其便捷的数据处理能力.方便的文件读写以及支持多维度的表示方式使其 ...
随机推荐
- Oracle 密码失灵
java.sql.SQLException: ORA-28001: 密碼已經屆滿 at oracle.jdbc.driver.DatabaseError.throwSqlException(Datab ...
- Linux yum源详解
软件包安装方式 0.默认从官网下载包(国内,雅虎,网易,阿里云) cat /etc/yum.repos.d/rhel-source.repo [yum文件目录--redhat6版] [ ...
- Centos7 永久更改主机名
操作环境: [root@bogon ~]# uname -a Linux #localhost.localdomain 3.10.0-514.el7.centos.plus.i686 #1 SMP W ...
- C# Excel操作类 ExcelHelper
实现C#与Excel文件的交互操作,实现以下功能: 1.DataTable 导出到 Excel文件 2.Model数据实体导出到 Excel文件[List<Model>] 3.导出数据到模 ...
- Yii2 使用 RESTful 写API接口 实例
Yii2 使用 RESTful? 其实 Yii2 框架本身就对 RESTful 是友好支持的,具体可以看官方文档(http://www.yiichina.com/doc/guide/2.0/rest- ...
- 没有插件的sublime编辑器是没有灵魂的
这阵子各种捣鼓,现在趁有空记录一下sublime编辑器的一些实用的插件和安装方法,下午又该继续学习了. 接下来安装的是htmlHint.jsHint.cssLint以及汉化这几种插件,其实插件会使我们 ...
- 闲谈CDN网络架构
CDN也就是内容分布网络(Context Delivery Network),它是构筑在现有interent上的一种先进的流量分配网络.其目的是通过现有的Internet中增加一层新的网络架构,将网站 ...
- sublime text3 当运行报错error时,取消显示路径path的方法
sublime text3 每当运行报错error时,都会出现一长串的path路径,如何不显示呢? 可以通过注释掉Packages/Default/exec.py的四个特定行来更改. 首先,您需要从P ...
- oracle 手动增加序列值
1.select seq_name.nextval from dual; //假设得到结果5656 2.alter sequence seq_name increment by -5655; //注意 ...
- javascript:void(0)的问题
最近看了好几个关于<a>标签和javascript:void(0)的帖子,谨记于此,以资查阅. 注:以下代码未经全面测试,但每一种方法可能会出现的情况都基本做了说明. 在做页面时,如果想做 ...