pandas数据处理

一.介绍pandas

❤python Data Analysis Library 或 pandas是基于NumPy的一种工具,该工具是为了解决数据分析任务而创建的。
❤pandas纳入了大量库和一些标准的数据模型,提供了高效的操作大型数据集所需的工具
❤pandas提供了大量使我们快速便捷地处理数据的函数和方法
❤它使python成为强大而高效的数据分析环境的重要因素之一
❤.csv文件其实就是.txt文件,只是用逗号或者空格分开的,用Excel也能打开
❤最重要的两个方法:from pandas import Series,DataFrame
❤数据分析三剑客:import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

二.Series

series是一种类似于一位数组的对象,由下面两部分组成:
  ❤values:一维数据(ndarray类型)
  ❤index:相关的数据索引标签
  **Scries中存放的数据必须是1维的**

1.Series的创建

  两种创建方式:

(1)由列表或numpy数组创建
默认索引为0到N-1的整数型索引 索引和值都有
在这里插入图片描述
还可以通过index参数指定索引
在这里插入图片描述
在这里插入图片描述
由ndarray创建的是引用,而不是副本。对Series元素的改变也会改变原来的ndarray对象中的元素(在列表中没有这种情况)
(2)由字典创建
在这里插入图片描述
2.Series的索引和切片
可以使用中括号取单个索引(此时返回的是元素类型),或者中括号里一个列表取多个索引(此时返回仍然是一个Series类型)。分别显示索引和隐式索引:
(1)显式索引: 注意此时为闭区间 也就是说index是什么,就索引什么
❤使用index中的元素作为索引值

		❤使用.loc[](推荐)
		![在这里插入图片描述](https://img-blog.csdn.net/2018102121521134?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L01pbmdaaWVyXw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
		![nt/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)](https://img-blog.csdn.net/20181021215359517?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L01pbmdaaWVyXw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

(2)隐式索引: 也就是说可以使用数字来索引
❤使用整数作为索引值
❤使用.iloc[](推荐)
注意:此时为半开区间
在这里插入图片描述
(3)切片
在这里插入图片描述 (4)Series的基本概念
❤可以把Series看成一个定长的有序字典,可以通过shape,size,index,values等得到series的属性
在这里插入图片描述
❤可以把用s.head()和s.tail()只查看前五个或者后五个。
❤当索引没有对应的值时,可能出现缺失数据显示NaN(not a number)的情况。 np.nan和None不是一个数,是不一样的。
在这里插入图片描述
在这里插入图片描述
❤可以用pd.isnull(),pd.notnull(),或自带的isnull(),notnull()函数检测缺失数据。
在这里插入图片描述
在这里插入图片描述

也就是说把s1里面是True的取出来。这样就节省了工作量。

❤Series对象本身及其实例都有一个name属性
name区分,DataFrame中用于区分,在DataFrame中是列名。
(4)Series的运算
在这里插入图片描述
在这里插入图片描述
❤两个Seres之间的运算
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
adarray中如果有np.nan那么就没法进行数学运算了。

三.DataFrame

DataFrame是一个**表格型**的数据结构,可以看做是由Series组成的字典(共同用一个索引)。DataFrame由按一定顺序排列的多列数据组成。DataFrame既有行索引,也有列索引。
		行索引:index
		列索引:columns
		值:values(numpy的二维数组)

(1)DataFrame的创建

❤常用的方法是传递一个字典来创建。DataFrame以字典的键作为每一列的名称,以字典的值(一个数组)作为每一列。此外,DataFrame会自动加上每一行的索引(和Series一样)
同Series一样,若传入的列与字典的键不匹配,则相应的值为NaN。
❤DataFrame属性:values,columns,index,shape
在这里插入图片描述

(2)DataFrame的索引

❤对行进行索引
通过类似字典的方式,返回一个Series类型的数据。
在这里插入图片描述
通过属性的方式
在这里插入图片描述
可以将DataFrame的列获取一个Series。返回的Series拥有原DataFrame想同的索引,且name属性也已经设置好了,就是相应的列名。
❤对列进行索引 对于 1行索引是Series类型,对于多行索引是DataFrame类型。
使用.ix[]来进行行索引(过时了)
使用.loc[]加index来进行行索引
使用.iloc[]加整数来进行行索引
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

❤对元素进行索引的方法
使用列索引
使用行索引(iloc[3,1]相当于两个参数;iloc[[3,3]]里面的[3,3]看做一个参数)
使用values属性(二维numpy数组)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注意:直接用中括号时:
索引表示的是列索引
切片表示的时行切片

(3)DataFrame之间的运算

❤DataFrame与DataFrame之间的运算
同Series一样:
在运算中自动对齐不同缩印的数据
如果索引不对应,则补NaN
❤DataFrame与Series之间的运算

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值