PYTHON PANDAS学习笔记之增删改查

第一部分:

import pandas as pd
import openpyxl

rec_list = pd.read_excel('2020.12出院病人明细.xlsx',engine='openpyxl')

# 通过列标签获取数据
rec_list = pd.read_excel('2020.12出院病人明细.xlsx',engine='openpyxl')
print(rec_list['name'])  #根据列标签获取一列数据,查询结果dtyp=object
print(rec_list['name'].values)  #根据列标签获取一列数据的值,返回一个列表
print(rec_list[['name','rec_num']])  #根据列标签获取多列数据,返回一个dataframe
 
# 通过loc方法获取数据
print(rec_list.loc[0,'姓名'])  #根据行标签,列标签获取单元格的值
print(rec_list.loc[[1,2]])  #返回第二三行的dataframe,注意需要两个[[]],里面的[]为行标签的列表,index是从0开始的
print(rec_list.loc[0:2]) #返回第一二三行,双闭空间
print(rec_list.loc[[1,2],['姓名','天数']])  #返回第二三行的姓名和天数列

# 通过iloc方法获取数据
print(rec_list.iloc[0:2]) #返回第一二行数据,左闭右开,和loc方法的不同
print(rec_list.iloc[1900:]) #返回从1900行开始的到最后一行的数据

# 条件筛选
print(rec_list[rec_list['天数']==5]) #返回天数等于5的所有行
print(rec_list[rec_list['天数']>=60]) #返回天数大于等于60的所有行
print(rec_list[(rec_list['科室']=='产科')&(rec_list['天数']>7)]) #复合条件筛选

第二部分

import pandas as pd
import openpyxl

rec_list = pd.read_excel('2020.12出院病人明细.xlsx',engine='openpyxl')
rec_list['num'] = range(1,1934)
 #增加num列,赋值1到1933
rec_new.loc[1933,['出院科别','姓名','天数']] = ['otho','Tom',5] #用loc方法指定行名列名增加数据
rec_new = rec_new.append({'出院科别':'otho','姓名':'Jerry','天数':6},ignore_index=True) #用append方法添加一行具体的数据,一定要写上ignore_index=True

第三部分

import pandas as pd
import openpyxl

rec_list = pd.read_excel('2020.12出院病人明细.xlsx',engine='openpyxl')
rec_list['姓名'].replace('李卓','hello',inplace=True) # 用replace方法将姓名列的李卓改成hello

第四部分

import pandas as pd
import openpyxl

rec_list = pd.read_excel('2020.12出院病人明细.xlsx',engine='openpyxl')
del(rec_list['姓名'])
 # 删除列
rec_new = rec_list.drop(labels=['性别','年龄'],axis=1)
 # axis=1是删除列
rec_new = rec_list.drop(labels=[0,1],axis=0) #axis=0是删除行

You may also like...

发表回复