Pandas——数据处理对象
Pandas中的数据结构
Series
: 一维数组,类似于Python
中的基本数据结构list
,区别是Series
只允许存储相同的数据类型,这样可以更有效的使用内存,提高运算效率。就像数据库中的列数据;DataFrame
: 二维的表格型数据结构。很多功能与R
中的data.frame
类似。可以将DataFrame
理解为Series
的容器;Panel
:三维的数组,可以理解为DataFrame
的容器。
Series
是一个一维的类似的数组对象,包含一个数组的数据(任何NumPy
的数据类型)和一个与数组关联的数据标签,被叫做索引 。最简单的Series
是由一个数组的数据构成:
from pandas import Series,DataFrame
import pandas as pd
a = Series([1,4,7,9])
print(a)
运行结果:
Series
的交互式显示的字符串表示形式是索引在左边,值在右边。因为我们没有给数据指定索引,一个包含整数0
到N-1(
这里N
是数据的长度)的默认索引被创建。你可以分别的通过它的values
和index
属性来获取 Series
的数组表示和索引对象:
from pandas import Series,DataFrame
import pandas as pd
a = Series([1,4,7,9])
#print(a)
print(a.values)
print(a.index)
运行结果:
创建一个带有索引来确定每一个数据点的Series
。
b = Series([1,5,9,3],index=['q','w','e','r'])
print(b)
运行结果:
字典类型转换成Series,Series中的索引是排列后的字典的键。
data = {'湖北':"武汉","四川":"成都","湖南":"长沙"}
c = Series(data)
print(c)
运行结果:
DataFrame
是一个表格型的数据结构,是以一个或多个二维块存放的数据表格(层次化索引),DataFrame
既有行索引还有列索引,它有一组有序的列,每列既可以是不同类型(数值、字符串、布尔型)的数据,或者可以看做由Series
组成的字典。
DataFrame创建:
dictionary = {'state':['0hio','0hio','0hio','Nevada','Nevada'],
'year':[2000,2001,2002,2001,2002],
'pop':[1.5,1.7,3.6,2.4,2.9]}
frame = DataFrame(dictionary)
print(frame)
结果:
修改行名:
frame = DataFrame(dictionary,index=['one','two','three','four','five'])
结果:
添加修改(等号左边是新加的列索引,右边是值,而且值的个数一定要和原来一样):
frame['add']=[1,2,3,4,5]
结果:
添加Series类型(Series中的索引名要和原来的相同):
frame=DataFrame(dictionary,index=['one','two','three','four','five'])
# value = Series([1,3,1,4,6],index = [0,1,2,3,4])(这种会出错)
# frame['add1'] = value
value = Series([1,3,1,4,6],index=['one','two','three','four','five'])
frame['add1'] = value
print(frame)
结果:
Pandas——数据处理对象的更多相关文章
- pandas.DataFrame对象解析
pandas.DataFrame对象类型解析 df = pd.DataFrame([[1,"2",3,4],[5,"6",7,8]],columns=[&quo ...
- python pandas 数据处理
pandas是基于numpy包扩展而来的,因而numpy的绝大多数方法在pandas中都能适用. pandas中我们要熟悉两个数据结构Series 和DataFrame Series是类似于数组的对象 ...
- 数据分析入门——pandas数据处理
1,处理重复数据 使用duplicated检测重复的行,返回一个series,如果不是第一次出现,也就是有重复行的时候,则为True: 对应的,可以使用drop_duplicates来删除重复的行: ...
- pandas数据处理
首先,数据加载 pandas提供了一些用于将表格型数据读取为DataFrame对象的函数,期中read_csv和read_table这两个使用最多. 1.删除重复元素 使用duplicated()函数 ...
- Pandas数据处理实战:福布斯全球上市企业排行榜数据整理
手头现在有一份福布斯2016年全球上市企业2000强排行榜的数据,但原始数据并不规范,需要处理后才能进一步使用. 本文通过实例操作来介绍用pandas进行数据整理. 照例先说下我的运行环境,如下: w ...
- Pandas数据处理 学习
pandas是在numpy的基础上建立的新程序库,提供了一种高效的DataFrame数据结构. DataFrame本质上是一种带行标签和列标签.支持相同数据类型和缺失值的多维数组. 先看版本信息: p ...
- Python数据科学手册-Pandas数据处理之简介
Pandas是在Numpy基础上建立的新程序库,提供了一种高效的DataFrame数据结构 本质是带行标签 和 列标签.支持相同类型数据和缺失值的 多维数组 增强版的Numpy结构化数组 行和列不在只 ...
- pandas数据处理基础——筛选指定行或者指定列的数据
pandas主要的两个数据结构是:series(相当于一行或一列数据机构)和DataFrame(相当于多行多列的一个表格数据机构). 本文为了方便理解会与excel或者sql操作行或列来进行联想类比 ...
- Python———pandas数据处理
pandas模块 更高级的数据分析工具基于NumPy构建包含Series和DataFrame两种数据结构,以及相应方法 调用方法:from pandas import Series, DataFra ...
随机推荐
- python 常用包之xml文件处理
1,处理xml的包 from xml.etree import ElementTree as ET 2,如何写出xml文件 xml文件和html中的元素很像,有父级子集之说, root = ET.El ...
- mysql的数据库开放权限
链接数据库之后运行下面的命令即可 grant all PRIVILEGES on *.* to %username%@'%' identified by '%password%'; 如给root链接数 ...
- 7_6 带宽(UVa140)<回溯法:最优性剪枝>
给定一个图(V,E),其中V为顶点的集合,E为边的集合,属于VxV.给定V中元素的一种排序,那么顶点v的带宽定义如下:在当前给定的排序中,与v距离最远的且与v有边相连的顶点与v的距离.给定排序的带宽定 ...
- 2019 徐州网络赛 center
题意:n个点,求最小加上几个点让所有点关于一个点(不需要是点集里面的点)中心对称 题解:双重循环枚举,把中点记录一下,结果是n-最大的中点 #include <bits/stdc++.h> ...
- C9300升级-TFTP
1.操作命令:CAT9300(config)#ip tftp blocksize 8192CAT9300(config)#install add file tftp://10.1.100.37/cat ...
- python关于操作文件的相关模块(os,sys,shutil,subprocess,configparser)
一:os模块 os模块提供了许多允许你程序与操作系统直接交互的功能 功能 说明 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirna ...
- CSS-文本溢出省略号表示
前提条件是所引用的元素是块级元素,因为使用了WebKit的CSS扩展属性,该方法适用于WebKit浏览器及移动端 单行溢出处理: .text-overflow{ overflow: hidden; t ...
- Could not initialize class net.sourceforge.tess4j.TessAPI 解决方法
java.lang.NoClassDefFoundError: Could not initialize classnet.sourceforge.tess4j.TessAPI 主要原因是在Windo ...
- c# /MVC设置类的自定义特性
public class MarkStaticAttribute:Attribute { public MarkStaticAttribute(bool mark=true) { _IsMark = ...
- Tomcat 和 JVM 性能调优总结
Tomcat性能调优: 找到Tomcat根目录下的conf目录,修改server.xml文件的内容.对于这部分的调优,我所了解到的就是无非设置一下Tomcat服务器的最大并发数和Tomcat初始化时创 ...