Pandas之Series和DataFrame

Pandas的数据结构分析

Pandas中有两个主要的数据结构:SeriesDataFrame,其中 Series 是一维的数据结构,DataFrame 是二维的、表格性的数据结构

Series

Series是一个类似于一维数组的对象,它能够保存任何数据类型,主要有一组数据和与之相关的索引两部分组成,如图:
在这里插入图片描述

创建Series对象

Pandas 的 Series 对象可以使用以下构造方法创建

class pandas.series(data=None, index=None, dtype=None,name=None,copy=False,fastpath=False)

# data : 传入的数据,可以是 ndarray, list(必须)
# index: 索引(非必须)
# dtype: 指定数据的数据类型(非必须)
# copy:是否复制数据,默认是 False(非必须)
  1. 传入列表构造 Series 对象,不传入 index 参数,此时默认会创建一个 0~N 的整数索引
import pandas as pd
ser_obj = pd.Series([1,2,3,4])
ser_obj

在这里插入图片描述

  1. 指定索引创建 Series 对象,索引必须是唯一的,且与数据的长度相同
ser_obj = pd.Series([1,2,3,4,5],index=['a','b','c','d','e'])
ser_obj

在这里插入图片描述

  1. 使用 dict 进行构建
student_data = {1:"小明", 2:"小张", 3:"小李", 4:"小乐"}
ser_obj = pd.Series(student_data)
ser_obj

在这里插入图片描述

  1. 指定数据类型
ser_obj = pd.Series([1,2,3,4,5],index=['a','b','c','d','e'],dtype='float64')
ser_obj

在这里插入图片描述


获取Series对象的索引和数据

获取 Series 对象的索引和数据,可以分别使用 Series 对象的 index属性和value属性获取,索引和数据都是以对象的形式存在

ser_obj = pd.Series([1,2,3,4,5],index=['a','b','c','d','e'])
ser_obj.index		# 获取索引对象

在这里插入图片描述

ser_obj.values		#获取数据

在这里插入图片描述

获取单个值可以直接索引默认的索引

arr_obj[2]

在这里插入图片描述


DataFrame

DataFrame是一个类似于二维数组或表格的对象,它的每列数据可以是不同的数据类型。与Series对象相似,DataFrame 的结构也是由索引和数据组成的,不同的是,DataFrame 不仅有行索引,还有列索引
在这里插入图片描述

创建DataFrame


Pandas 的 DataFrame 类对象可以使用以下的构造方法创建:
pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)
# columns :列标签,如果没有传入索引参数,则默认会自动创建一个从0 ~ N的整数索引

其余参数的含义和 Series构造方法中的参数的含义一样

  1. 不指定索引创建,行索引列索引都是默认的
df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']])
df_obj

在这里插入图片描述

  1. 指定索引创建
df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=[1,2,3,4])
df_obj

在这里插入图片描述



获取DataFrame 对象的索引和数据

获取行索引和列索引
df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=[1,2,3,4])
df_obj.index		# 行索引

在这里插入图片描述

df_obj.columns		# 列索引

在这里插入图片描述

获取数据
获取列的两种方法
  1. 通过列索引获取列数据
df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=[1,2,3,4])
df_obj

在这里插入图片描述

df_obj[1]

在这里插入图片描述

  1. 通过属性获取列数据
df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=['c1','c2','c3','c4'])
df_obj

在这里插入图片描述

df_obj.c1

在这里插入图片描述

获取行的两种方法
  1. loc[行标签名]
df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=['c1','c2','c3','c4'])
df_obj

在这里插入图片描述

df_obj.loc['x']

在这里插入图片描述

  1. iloc[默认整数索引]
 df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=['c1','c2','c3','c4'])
df_obj

在这里插入图片描述

df.iloc[1]

在这里插入图片描述

添加和删除数据

添加数据

要想为DataFrame添加一列数据,可以通过给列索引或者列名赋值的方式实现。新增列的长度必须和其他列的长度保持一致

 df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=['c1','c2','c3','c4'])
df_obj

在这里插入图片描述

df_obj['c5'] = ['s','b']
df_obj

在这里插入图片描述

删除数据

要想删除一列数据,则可以使用del语句实现

df_obj = pd.DataFrame([['a','b','c','d'],['e','f','g','h']],index=['x','y'],columns=['c1','c2','c3','c4'])
df_obj

在这里插入图片描述

del df_obj[c1]
df_obj

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值