import pandas as pd
import numpy as np
from pandas import Series,DataFrame
s1 = Series(range(1,5),index=list('abcd'))
print(s1)
print(s1.index)
#索引对象不可修改
#s1.index[0]="A"
#但是可以整体替换
s1.index=list('ABCD')
print(s1.index)
'''
索引的删除
obj.drop(index,axis=0,inplace=False)默认删除行索引
obj.drop(column.axis=1,inplace=False)默认删除列索引
'''
df1 = DataFrame(
np.arange(16).reshape(4,4),
index=list('abcd'),
columns='one/two/three/four'.split('/')
)
print(df1)
#
# df1.drop('a',inplace=True)
# print(df1)
df1.drop('one',inplace=True,axis=1)
print(df1)
df1.drop(['a','c'],inplace=True)
print(df1)
#索引的过滤
'''
选取就是读取
过滤就是选择想要的数据
'''
list2=list(range(6,13))
np.random.shuffle(list2)#随机打乱顺序
print(list2)
s1=Series(list2,index=list('abcdefg'))
print(s1)
#以下列形式显示Series index: a value:12
for each in s1.index:
print(f'index:{each} value:{s1[each]}')
print('=============================================')
#如果找出所有value<9的值
for each in s1.index:
if s1[each]<9:
print(f'index:{each} value:{s1[each]}')
#series 支持布尔读取
print(s1<9)
print(s1[s1<9])
#找出偶数
print(s1[s1%2==0])
#重置索引 会进行匹配 匹配不上就nan
s2=s1.reindex(list('ABCdeFG'))
print(s2)
#fill_value将值填充的nan
s2=s1.reindex(list('ABCdeFG'),fill_value=0)
print(s2)
python索引的相关知识(pandas)
最新推荐文章于 2024-05-27 17:00:50 发布