1.创建DataFrame
import numpy as np
import pandas as pd
data = pd.DataFrame(data=np.random.randint(1,20,(5,4))
,index=['小明','小黄','小王','小刘','小张']
,columns=list('ABCD'))
print(data)
2.对行进行索引
data.loc['小黄'].B
# 1
3.对元素进行索引的办法
#隐式索引的主要作用式切片
data.iloc[0,0]
# 9
data.loc['小明':'小王','B':]
data.iloc[0:-1]
user = pd.DataFrame(np.random.randint(0,100,(5,4)),index=list('东南西北中'),
columns=['username','sex','addr','seet'])
user
4.插入
#增加一行
user.loc['东邪'] = ['李晶','?','红浪漫',1123]
user
#增加一列 一列中有多少个元素是不知道的
user.loc[:,'age'] = np.nan
user
##### 修改
import warnings
warnings.filterwarnings('ignore')
#查询到你想要修改的数据
#查询 username = 李晶
cond_index = user.username == '李晶'
cond_index
#东 False
#南 False
#西 False
#北 False
#中 False
#东邪 True
#Name: username, dtype: bool
#被拷贝的新数据,在单独的内存空间中
the_one = user.loc[cond_index]
the_one
the_one.age = 40
#把修改好的数据覆盖
user.loc[cond_index] = the_one
user
换一种方法:
#query查询
new_data = user.query("username=='李晶'")
new_data.age = 50
user.loc[new_data.index] = new_data
user
5.查询:
#查询username = 李晶 and addr=红浪漫
cond1 = user.username == '李晶'
cond2 = user.loc[cond1].addr == '红浪漫'
user.loc[cond1].loc[cond2]
user.query("username=='李晶' & addr=='红浪漫'")
user.query("username=='李晶' | addr==69")
#删除列
user.drop(labels='age',axis=1,inplace=True)
#删除行
user.drop(labels='东邪',axis=0,inplace=True)
user
参考文章链接:https://blog.csdn.net/qq_35456045/article/details/104285584