2021-07-11

数据分析学习笔记 0711——索引操作
pandas索引操作总结:
1、索引的对象不可变,保证了数据的安全
2、重新索引:reindex(dataframe可以使用columns改变列索引)
3、增加列:series直接增加,对于dataframe可以使用insert
4、索引的增加:loc操作、append,ignore_index参数
5、索引的删除:del、drop(inplace参数)
6、数据的修改:直接修改,重新索引使用reindex(重点在于选定特定位置数据)
7、数据查询:行索引、切片索引、布尔索引
8、高级索引:loc标签索引、iloc位置索引

import numpy as np
import pandas as pd
ps1 = pd.Series(range(1,6),index = ['a','b','c','d','e'])
ps1  
type(ps1.index)
pd1 = pd.DataFrame(np.arange(9).reshape(3,3),index =[ 'a','b','c'],columns = ['A','B','C'])
pd1
type(pd1.index)
#2、重新索引及索引的增删改查
ps2=ps1.reindex(['a','b','c','d','e','f'])
ps2
pd2 = pd1.reindex(['a','b','c','d','e','f'])
pd2
pd3 = pd1.reindex(columns=['C','B','A'])
pd3
#增加列
ps1['g']=9#在原有数据的基础上新增索引及数据
ps1
s1=pd.Series({'f':999})
ps3=ps1.append(s1)
ps3
pd1[4] = [10,11,12]
pd1
pd1.insert(0,'E',['9,','99','999'])#在原有数据的基础上新增索引及数据
pd1
#增加行
#标签索引loc
pd1.loc['d']=[1,2,3,4,5]
pd1
row = {'E':6,'A':6,'B':6,'C':6,4:6}
pd5=pd1.append(row,ignore_index=True)
pd5
#del
ps1
del ps1['b']
ps1
pd1
del pd1['E']
pd1
ps6=ps1.drop ('g') #drop不改变原数据,产生新数据
ps6
ps7 = ps1.drop(['c','d'])
ps7
pd1.drop('a')
pd1.drop(['a','b'])
pd1.drop('B',axis=1)
pd1.drop('B',axis='columns')
pd1.drop('b',axis='index')
ps1.drop('g',inplace=True)
ps1
ps1 = pd.Series(range(1,6),index = ['a','b','c','d','e'])
ps1  
type(ps1.index)
pd1 = pd.DataFrame(np.arange(9).reshape(3,3),index =[ 'a','b','c'],columns = ['A','B','C'])
pd1
type(pd1.index)
ps1['a']=0
ps1[0]=9
ps1['a','c']=[3,7]
ps1

```python
pd1['A'] = [3,6,9]
pd1['A':'a']=0
pd1['B':'b']=3
pd1.A=6
pd1['a']=9
pd1
#loc标签索引与位置索引
pd1.loc['a']=6
pd1.loc['a',"A"]=1000
pd1
#Series
#1、行索引
ps1
ps1['a']
ps1[0]
#切片索引
ps1['a':'e']
ps1[:5]
ps1[[1,2,3]]
ps1[['a','d']]
#布尔索引
ps1[ps1>2]
#dataframe
pd1
pd1['A']
pd1.loc['a']
pd1[['A','C']]
pd1.loc['a','A']
pd1[:2]
#loc标签索引(loc是基于标签名的索引,自定义的索引名)
ps1['a':'c']
ps1.loc['a':'c']
pd1.loc['a':'c',['A','C']]
ps1[1:3]
#iloc位置索引
ps1.iloc[1:3]
pd1.iloc[0:2,[0,2]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值