发布于2019-08-06 10:21 阅读(1257) 评论(0) 点赞(5) 收藏(1)
Pandas的名称来自于面板数据(panel data)和Python数据分析(data analysis)。
Pandas是一个强大的分析结构化数据的工具集,基于NumPy构建,提供了 高级数据结构 和 数据操作工具,它是使Python成为强大而高效的数据分析环境的重要因素之一。
一个强大的分析和操作大型结构化数据集所需的工具集
基础是NumPy,提供了高性能矩阵的运算
提供了大量能够快速便捷地处理数据的函数和方法
应用于数据挖掘,数据分析
提供数据清洗功能
Series和DataFrame中的索引都是Index对象,索引对象不可变,保证了数据的安全
Pandas有两个最主要也是最重要的数据结构: Series 和 DataFrame
import pandas as pd # 导包
Series
Series是一种类似于一维数组的 对象,由一组数据(各种NumPy数据类型)以及一组与之对应的索引(数据标签)组成。
操作 | 代码实现 | 返回值 | 说明 |
---|---|---|---|
通过list构建Series |
pd.Series(range(10)) | 新Series | 自动生成索引 |
pd.Series(range(3), index = ['a', 'b', 'c']) | 新Series | 自定义索引 | |
通过dict构建Series |
pd.Series(dict) | 新Series | dict的key为索引,value为元素 |
操作 | 代码实现 | 返回值 | 说明 | |
获取前n行数据 | series.head(3) | 新Series | 获取前三行,默认获取前五行 | |
获取后n行数据 | series.tail(3) | 新Series | 获取后三行,默认获取后五行 | |
获取index | series.index | RangeIndex | 获取index | |
获取values | series.values | ndarray一维数组 | 获取所有values | |
运算 | series * 2 | 新Series | 索引与数据的对应关系不被运算结果影响 | |
series > 15 | 新Series(bool) | |||
name属性 | 对象名 | series.name | 新Series | |
对象索引名 | series.index.name | 新Series | ||
利用index取值 | series[index] series['b'] |
对应的value值 | ||
利用index切片 | series[2:4] series['b':'d'] |
新Series | 按索引名切片操作时,是包含终止索引的 | |
不连续索引 | series[[0,2,4]] series[['b','d']] |
新Series | 注意是双层中括号[[…,…,…,]] | |
布尔索引 | series1 = series > 2 series2[series1] |
新Series |
DataFrame(Series容器)
DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同类型的值。DataFrame既有行索引也有列索引,它可以被看做是由Series组成的字典(共用同一个索引),数据是以二维结构存放的。
操作 | 代码实现 | 返回值 | 说明 |
---|---|---|---|
通过ndarray构建DataFrame |
pd.DataFrame(array) pd.DataFrame(np.random.randn(3,4), columns = ['a', 'b', 'c']) |
新DataFrame |
通过多维数组(二维)构建DataFrame,自动生成行索引和列标签(列索引) columns 指定列索引名 |
通过dict构建DataFrame |
pd.DataFrame(dict) | 新DataFrame | dict的key为列标签,value为元素,自动生成行索引 |
dict = {'A': 1, 'B': pd.Timestamp('20190616'), 'C': pd.Series(1, index=list(range(4)),dtype='float32'), 'D': np.array([3] * 4,dtype='int32'), 'E': ["Python","Java","C++","C"], 'F': 'tiger' } |
操作 | 代码实现 | 返回值 | 说明 |
获取前n行 | dataframe.head(3) | 新DataFrame | 获取前三行,默认获取前五行 |
获取后n行 | dataframe.tail(3) | 新DataFrame | 获取后三行,默认获取后五行 |
shape |
dataframe.shape | 元组 | 返回dataframe形状 |
获取index | dataframe.index | RangeIndex | 获取index |
columns |
dataframe.columns | RangeIndex | DataFrame的列索引列表 |
获取values | dataframe.values | ndarray二维数组 | 获取所有values |
获取列数据 | dataframe['A'] <=> dataframe.A | 新Series | 通过列索引获取列数据 |
dataframe[['A']] | 新DataFrame(只有一列) | 注意是双层中括号[[…,…,…,]] | |
增加列数据 | dataframe['G'] = series dataframe['G'] = dataframe['A'] + 4 |
新DataFrame | 类似Python的dict添加key-value |
删除列数据 | del(dataframe['G']) | None | |
不连续索引 | dataframe[['a','c']] | 新DataFrame | 注意是双层中括号[[…,…,…,]] |
作者:小姐姐抱抱我
链接:https://www.pythonheidong.com/blog/article/7596/09595a5019903130faeb/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!