安装pandas

通过python pip安装pandas

pip install pandas

pandas数据结构

pandas常用数据结构包括:Series和DataFrame

Series

Series是一种一维的数组型对象,包含一个值序列(与numpy中的数据类型相似),数据标签(称为索引(index))。

import pandas as pd

# 创建Series对象
obj=pd.Series([4,5,6,7])
print(obj)
0    4
1 5
2 6
3 7
dtype: int64

左边为索引,右边为值,默认索引从0到n-1(n为数据长度),可以通过values属性和index属性分别获得Series对象的值和索引

print(obj.values)
array([4, 5, 6, 7], dtype=int64)
print(obj.index)
RangeIndex(start=0, stop=4, step=1)
# 自定义索引序列
obj2=pd.Series([4,5,6,7],index=['a','b','d','e'])
print(obj2,'\n') # 输出索引
print(obj2.index)
a    4
b 5
d 6
e 7
dtype: int64 Index(['a', 'b', 'd', 'e'], dtype='object')

Series对象可以使用标签来进行索引

# 输出索引为b的元素
print(obj2['b']) # 输出索引为a,d,e的元素
print('* '*10)
print(obj2[['a','d','e']])
5
* * * * * * * * * *
a 4
d 6
e 7
dtype: int64

Series对象也能使用布尔值进行过滤

# 输出值大于5的元素
print(obj2[obj2>5])
d    6
e 7
dtype: int64

DataFrame

DataFrame表示矩阵的数据表,包含已排序的列集合,每一列可以是不同的的值类型(数值、字符串、布尔值等)

DataFrame既有行索引,也有列索引,可以被视为一个共享相同索引的Series的字典

# 创建DataFrame对象
data={'age':[18,18,18,20,20,20],'name':['a','b','c','aa','bb','cc'],'height':[180,180,180,182,182,182]}
frame=pd.DataFrame(data)
print(frame)
   age name  height
0 18 a 180
1 18 b 180
2 18 c 180
3 20 aa 182
4 20 bb 182
5 20 cc 182

DataFrame也可以用columns参数指定列索引顺序排列

frame=pd.DataFrame(data,columns=['name','age','height'])
print(frame)
  name  age  height
0 a 18 180
1 b 18 180
2 c 18 180
3 aa 20 182
4 bb 20 182
5 cc 20 182

如果传的列参数不在字典中,将会出现缺失值

frame=pd.DataFrame(data,columns=['name','age','height','addition'])
print(frame)
print(frame.columns)
  name  age  height addition
0 a 18 180 NaN
1 b 18 180 NaN
2 c 18 180 NaN
3 aa 20 182 NaN
4 bb 20 182 NaN
5 cc 20 182 NaN
Index(['name', 'age', 'height', 'addition'], dtype='object')

DataFrame的一列可以按字典型标记或属性那样索引为Series

frame=pd.DataFrame(data,columns=['name','age','height'])
print(frame['name'])
print(frame.age)
0     a
1 b
2 c
3 aa
4 bb
5 cc
Name: name, dtype: object
0 18
1 18
2 18
3 20
4 20
5 20
Name: age, dtype: int64

行也可以通过位置或特殊属性loc进行索引

frame=pd.DataFrame(data,columns=['name','age','height'])
print(frame.loc[2])
name        c
age 18
height 180
Name: 2, dtype: object

初探pandas——安装和了解pandas数据结构的更多相关文章

  1. python安装numpy和pandas

    最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了.首要条件,python版本必须 ...

  2. pandas教程1:pandas数据结构入门

    pandas是一个用于进行python科学计算的常用库,包含高级的数据结构和精巧的工具,使得在Python中处理数据非常快速和简单.pandas建造在NumPy之上,它使得以NumPy为中心的应用很容 ...

  3. [转] python安装numpy和pandas

    最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了.首要条件,python版本必须 ...

  4. Python入门之安装numpy和pandas

    最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了. 首要条件,python版本必 ...

  5. pandas安装以及出现的问题

    pandas安装以及出现的问题 1.pandas 安装 pandas是Python的第三方库,所以使用前需要安装一下,直接使用pip install pandas就会自动安装,安装成功后显示的以下的信 ...

  6. 【转载】python安装numpy和pandas

    转载:原文地址 http://www.cnblogs.com/lxmhhy/p/6029465.html 最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装 ...

  7. Windows下下载及安装numpy、pandas及简单应用

    下载numpy 下载地址 https://pypi.python.org/pypi/numpy 进入网站,下载和自己电脑及电脑中安装的python匹配的numpy版本.我的电脑是Win 10 x64位 ...

  8. Python离线断网情况下安装numpy、pandas和matplotlib等常用第三方包

    联网情况下在命令终端CMD中输入“pip install numpy”即可自动安装,pandas和matplotlib同理一样方法进行自动安装. 工作的电脑不能上外网,所以不能通过直接输入pip命令来 ...

  9. python2.7安装numpy、pandas、matplotlib库

    我装的是python2.7 然后pip的版本是18.1,最近使用pip install **安装包的时候总是会提示 You are using pip version 18.1, however ve ...

随机推荐

  1. Java实现 LeetCode 129 求根到叶子节点数字之和

    129. 求根到叶子节点数字之和 给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字. 例如,从根到叶子节点路径 1->2->3 代表数字 12 ...

  2. Java实现 LeetCode 128 最长连续序列

    128. 最长连续序列 给定一个未排序的整数数组,找出最长连续序列的长度. 要求算法的时间复杂度为 O(n). 示例: 输入: [100, 4, 200, 1, 3, 2] 输出: 4 解释: 最长连 ...

  3. Java实现蓝桥杯G将军

    G将军有一支训练有素的军队,这个军队除开G将军外,每名士兵都有一个直接上级(可能是其他士兵,也可能是G将军).现在G将军将接受一个特别的任务,需要派遣一部分士兵(至少一个)组成一个敢死队,为了增加队员 ...

  4. 第03组团队Git现场编程实战

    1.组员职责分工 张逸杰:复制监督整个编程任务的进程以及协助组员编程 黄智锋.刘汪洋:负责UI设计 苏凯婷.鲍冰如:爬取数据并负责测评出福州最受欢迎的商圈 陈荣杰.杨锦镔:爬取数据并负责测评出福州人均 ...

  5. tensorflow2.0学习笔记第二章第一节

    2.1预备知识 # 条件判断tf.where(条件语句,真返回A,假返回B) import tensorflow as tf a = tf.constant([1,2,3,1,1]) b = tf.c ...

  6. KVM NAT(网络地址转换模式)

    NAT(网络地址转换模式) 使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网.也就是说,使用NAT模式可以实现在虚拟系统里访问互联网.很显然,如果你只有一 ...

  7. 2020/06/05 JavaScript高级程序设计 函数表达式

    函数表达式 函数定义的两种方式: 函数声明(函数声明提升,非标准name属性可访问给函数指定的名字) 函数声明提升:执行代码前先读取函数声明 function functionName(arg0, a ...

  8. jreble备注

    版本:2019.1.4 激活URL:http://jrebel.pyjuan.com/36931214-7bb6-42d4-afd7-26eb5628e004

  9. ServiceStack.Redis 5.8 版本去掉每小时 6000 次访问限制

    ServiceStack.Redis这个官方 Redis 访问组件从4.0版本后开始商业化了,在使用的时候会有很多限制: 1.类型限制 类型限制是20,这个组件自带序列化功能,使得我们可以直接把对象保 ...

  10. PAT 1043 Is It a Binary Search Tree (25分) 由前序遍历得到二叉搜索树的后序遍历

    题目 A Binary Search Tree (BST) is recursively defined as a binary tree which has the following proper ...