导入包

import pandas as pd

import numpy as np

提供高性能医用的数据类型和分析工具

pandas基于numpy实现,常与numpy和matplotlib一同使用

pandas的核心数据结构

series是一种类似于一维数组的对象,它由一维数组以及一组与之相关的数据标签(索引)组成

就是带标签的一维数组,可存储整数,浮点数,字符串,python对象等类型的数据

s=pd.Series(['a','b','c','d','e'])

print(s)

#结果:

0 a

1 b

2 c

3 d

4 e

dtype: object

series中可以使用index设置索引列表,与字典不同的是,series允许索引重复

s1=pd.Series(['a','b','c','d','e'],index=[100,200,100,400,500])

print(s1)

#结果:

100 a

200 b

100 c

400 d

500 e

dtype: object

series可以用字典实例化

s2={'a':1,'b':2,'c':3}

s3=pd.Series(s2)

print(s3)

#结果:

a 1

b 2

c 3

dtype: int64

可以通过Series的values和index属性获取其数组表示形式和索引对象

print(s3.values)

print(s3.index)

#结果:

[1 2 3]

Index(['a', 'b', 'c'], dtype='object')

s4=pd.Series(np.array([1,2,3,4,5]),index=['a','b','c','d','e'])

print(s4)

#结果:

a 1

b 2

c 3

d 4

e 5

dtype: int32

对应元素求和

print(s4+s4)

#结果:

a 2

b 4

c 6

d 8

e 10

dtype: int32

对应元素乘

print(s4*3)

#结果:

a 3

b 6

c 9

d 12

e 15

dtype: int32

series中最重要的一个功能,她会在算术运算中自动对齐不同索引的数据

series和多维数组的主要区别在于,series之间的操作会自动基于标签对齐数据,因此不用顾忌执行计算操作的series是否有相同的标签

obj1 = pd.Series({"Ohio": 35000, "Oregon": 16000, "Texas": 71000, "Utah": 5000})

print(obj1)

obj2 = pd.Series({"California": np.nan, "Ohio": 35000, "Oregon": 16000, "Texas": 71000})

print(obj2)

print(obj1 + obj2)

#结果:

Ohio 35000

Oregon 16000

Texas 71000

Utah 5000

dtype: int64

California NaN

Ohio 35000.0

Oregon 16000.0

Texas 71000.0

dtype: float64

California NaN

Ohio 70000.0

Oregon 32000.0

Texas 142000.0

Utah NaN

dtype: float64

s5=pd.Series(np.array([1,2,3,4,5]),index=['a','b','c','d','e'])

print(s5[1:])

print(s5[:-1])

print(s5[1:]+s5[:-1])

#结果:

b 2

c 3

d 4

e 5

dtype: int32

a 1

b 2

c 3

d 4

dtype: int32

a NaN

b 4.0

c 6.0

d 8.0

e NaN

dtype: float64

DataFrame可以进行行索引,列索引,是pandas中重要的数据结构

DataFrame是一个表格型的数据结构,类似于Excel或sql表

他含有一组有序的列,每列可以是不同的值类型(数值,字符串,布尔值)

DataFrame既有行索引,也有列索引,他可以被看做是由series组成的字典(共用同一个索引)

用多维数组字典,列表字典生成DataFrame

data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada'], 'year': [2000, 2001, 2002, 2001, 2002], 'pop': [1.5, 1.7, 3.6, 2.4, 2.9]}

frame=pd.DataFrame(data)

print(frame)

#结果:

state year pop

0 Ohio 2000 1.5

1 Ohio 2001 1.7

2 Ohio 2002 3.6

3 Nevada 2001 2.4

4 Nevada 2002 2.9

如果指定了列顺序,那么DataFrame的列就会按照指定的顺序进行排序

framel=pd.DataFrame(data,columns=['year','state','pop'])

print(framel)

#结果:

year state pop

0 2000 Ohio 1.5

1 2001 Ohio 1.7

2 2002 Ohio 3.6

3 2001 Nevada 2.4

4 2002 Nevada 2.9

和series一样,如果传入的列在数据中找不到,就会产生NAN值

frame2=pd.DataFrame(data,columns=['year','state','pop','debt'],index=['one','two','three','four','five'])

print(frame2)

#结果:

year state pop debt

one 2000 Ohio 1.5 NaN

two 2001 Ohio 1.7 NaN

three 2002 Ohio 3.6 NaN

four 2001 Nevada 2.4 NaN

five 2002 Nevada 2.9 NaN

用series字典或字典生成DataFrame

d={'one':pd.Series([1,2,3],index=['a','b','c']),

'two':pd.Series([1,2,3,4],index=['a','b','c','d'])

}

print(pd.DataFrame(d))

#结果:

one two

a 1.0 1

b 2.0 2

c 3.0 3

d NaN 4

通过类似字典标记的方式或属性的方式,可以将DataFrame的列获取位一个Series,返回Series拥有原DataFrame相同的所有

print(frame2['state'])

#结果:

one Ohio

two Ohio

three Ohio

four Nevada

five Nevada

Name: state, dtype: object

列可以通过赋值的方式进行修改,给那个空的“delt”列赋上一个标量值或一组值

frame2['debt']=16.5

print(frame2)

#结果:

year state pop debt

one 2000 Ohio 1.5 16.5

two 2001 Ohio 1.7 16.5

three 2002 Ohio 3.6 16.5

four 2001 Nevada 2.4 16.5

five 2002 Nevada 2.9 16.5

frame2['new']=frame2['debt']*frame2['pop']

print(frame2)

#结果:

year state pop debt new

one 2000 Ohio 1.5 16.5 24.75

two 2001 Ohio 1.7 16.5 28.05

three 2002 Ohio 3.6 16.5 59.40

four 2001 Nevada 2.4 16.5 39.60

five 2002 Nevada 2.9 16.5 47.85

frame2['debt']=np.arange(5)

print(frame2)

#结果:

year state pop debt new

one 2000 Ohio 1.5 0 24.75

two 2001 Ohio 1.7 1 28.05

three 2002 Ohio 3.6 2 59.40

four 2001 Nevada 2.4 3 39.60

five 2002 Nevada 2.9 4 47.85

python下载pandas库_Python中的pandas库相关推荐

  1. python导入excel类库_Python中使用第三方库xlutils来追加写入Excel文件示例

    Python中使用第三方库xlutils来追加写入Excel文件示例 目前还没有更好的方法来追写Excel,lorinnn在网上搜索到以及之后用到的方法就是使用第三方库xlutils来实现了这个功能, ...

  2. python的excell库_Python中使用第三方库xlrd来写入Excel文件示例

    继上一篇文章使用xlrd来读Excel之后,这一篇文章就来介绍下,如何来写Excel,写Excel我们需要使用第三方库xlwt,和xlrd一样,xlrd表示read xls,xlwt表示write x ...

  3. python中导入numpy库_python中的Numpy库

    导入numpy库: import numpy as np python的一个科学计算库的一个基础包,包含了强大的N维数组对象和向量运算 数组创建,可以使用array函数从常规的python列表和或元组 ...

  4. python绘制三维地形_python中的Matplot库和Gdal库绘制富士山三维地形图-参考了虾神的喜马拉雅山...

    首先请大家读一下面这篇文章了解什么是Gdal http://blog.csdn.net/grllery/article/details/77822595 剩下的我要公布绘制富士山的代码了,虽然基本co ...

  5. python算法和数据结构_Python中的数据结构和算法

    python算法和数据结构 To 至 Leonardo da Vinci 达芬奇(Leonardo da Vinci) 介绍 (Introduction) The purpose of this ar ...

  6. python numpy和pandas数据处理_python中添加数据分析工具numpy和pandas

    python中添加数据分析工具numpy和pandas 最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网 ...

  7. 安装pandas库报错_python中安装pandas

    在运行网上找的代码时,报错:ImportError: No module named 'pandas',解决:安装pandas 安装过程: (因为网上教程有的说用pip命令行安装:有的直接下载安装包, ...

  8. python如何下载库_python中如何下载库

    python下载安装库的方法: 1.在线安装 在cmd窗口直接运行:pip install 包名,如 pip install requests 注意:这种方式安装时会自动下载第三方库,安装完成后并不会 ...

  9. python数据建模工具_python数据分析工具——Pandas、StatsModels、Scikit-Learn

    Pandas Pandas是 Python下最强大的数据分析和探索工具.它包含高级的数据结构和精巧的工具,使得在 Python中处理数据非常快速和简单. Pandas构建在 Numpy之上,它使得以 ...

  10. pythonpandas数据库_python中使用pandas数据库

    python中使用pandas数据库 利用pandas进行数据分析,以及试用一下jupyter notebook import pandas as pd from pandas import Data ...

最新文章

  1. Building wheel for wrapt (setup.py) ... error
  2. 四个角度教你评估一个产品的用户体验好坏 | PMCAFF
  3. 前端程序升级linux方案,开源:AspNetCore 应用程序热更新升级工具(全网第一份公开的解决方案)...
  4. 彻底删除文件(File Delete Absolutely) 最新3.01版本 也已经在中关村在线升级成功
  5. java 之 插入排序
  6. SaaS和和PaaS的概念
  7. android压力测试命令monkey详解,android压力测试命令monkey详解(示例代码)
  8. 零基础如何学好Photoshop
  9. 阿里发布内部(面试官)题库:2022年Java社招岗(正式版)面试题
  10. Redis基础常用命令入门
  11. 机器指令与微指令之间的关系
  12. ##模拟图灵机 XN*2的运算
  13. Flutter返回页面时刷新页面
  14. 切图Photoshop参考线的操作
  15. 结构化方法和面向对象方法详解
  16. 基于JavaWeb的健康管理平台(源码+论文)
  17. Python:如何在代码完成时发出警报声?
  18. 展望2023之大一上寒假计划
  19. 使用KVM服务创建虚拟机
  20. 《周末休闲吧》:教你如何玩车震——车震全程攻略!_周末休闲吧_百度空间...

热门文章

  1. 鼠标测试软件m,[论坛]魔技无线激光鼠标测试心得(二)
  2. 金融级IT架构-数字银行的云原生架构解析
  3. macos 卸载驱动_如何从macOS菜单栏中快速卸载外部驱动器
  4. 【正点原子Linux连载】第六十五章 Linux 音频驱动实验 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0
  5. 理解Andriod 硬件加速
  6. 【绘图】Origin关闭加速模式(speed mode)
  7. NVIDIA JETSON TX2上运行yolo3
  8. 蓝牙网关走进智慧校园
  9. CH565 DVP sensor选型、性能评估
  10. Unity-粒子特效