数据的简单处理——pandas模块——选择数据

要对读取的数据进行编辑,需要先学会选择数据的操作,如果选择行数据、列数据或者同时选择行列数据。

python 复制代码
##############################
##作者:白雪公主的后妈
##时间:2024年12月29日
##主题:数据的简单处理------pandas模块------选择数据
##############################
'''
要对读取的数据进行编辑,需要先学会选择数据的操作,如果选择行数据、列数据或者同时选择行列数据。
'''
#1、选择行数据        可以读取单行数据,也可以读取多行数据,还可以按照指定的条件选择行数据
import pandas as pd
date=pd.read_excel("E:\\python\\Python_Code\\Excel\\订单表.xlsx",sheet_name=1,index_col=0)
print(date)
#1.1选择单行数据      使用loc方法可以依据行标签选择单行数据
print(date.loc["d001"])
'''
运行结果:
       产品  数量    金额
订单编号               
d001  投影仪  5台  2000
d002  马克笔  5盒   300
d003  打印机  1台   298
d004  点钞机  1台   349
d005  复印纸  2箱   100
d006  条码纸  6卷    34

产品     投影仪
数量      5台
金额    2000
Name: d001, dtype: object
'''
#########使用iloc方法可以一句行序号(从0开始技计数)选择单行数据。
print(date.iloc[2])
'''
运行结果:
产品    打印机
数量     1台
金额    298
Name: d003, dtype: object
'''
#1.2选择多行数据      使用loc或者iloc除了选择单行外可以选择多行
print(date.loc[["d001","d003"]])
'''
运行结果:
       产品  数量    金额
订单编号               
d001  投影仪  5台  2000
d003  打印机  1台   298
'''
print(date.iloc[[1,4]])
'''
运行结果:
       产品  数量   金额
订单编号              
d002  马克笔  5盒  300
d005  复印纸  2箱  100
'''
#1.3选择满足条件的行
a=date["金额"]<300
print(date[a])
'''
      产品  数量   金额
订单编号              
d003  打印机  1台  298
d005  复印纸  2箱  100
d006  条码纸  6卷   34
'''
#2、选择列数据    第一种方法使用指定标签列读取,第二种方法使用iloc方法实现
import pandas as pd
date=pd.read_excel("E:\\python\\Python_Code\\Excel\\订单表.xlsx",sheet_name=1,index_col=0)
print(date)
#2.1选择单列数据      使用指定标签列读取
print(date["产品"])
'''
运行结果:
       产品  数量    金额
订单编号
d001  投影仪  5台  2000
d002  马克笔  5盒   300
d003  打印机  1台   298
d004  点钞机  1台   349
d005  复印纸  2箱   100
d006  条码纸  6卷    34

订单编号
d001    投影仪
d002    马克笔
d003    打印机
d004    点钞机
d005    复印纸
d006    条码纸
Name: 产品, dtype: object
'''
#1.2选择多行数据      使用标签列读取,除了选择单列外可以选择多列
print(date[["产品","数量"]])
'''
       产品  数量
订单编号         
d001  投影仪  5台
d002  马克笔  5盒
d003  打印机  1台
d004  点钞机  1台
d005  复印纸  2箱
d006  条码纸  6卷
'''
#############用iloc方法也可以选择多列数据
date=pd.read_excel("E:\\python\\Python_Code\\Excel\\订单表.xlsx",sheet_name=1,index_col=0)
print(date)
print(date.iloc[:,[0,2]])
'''
运行结果:
       产品    金额
订单编号           
d001  投影仪  2000
d002  马克笔   300
d003  打印机   298
d004  点钞机   349
d005  复印纸   100
d006  条码纸    34
'''
##################用iloc方法通过类似列表切片的方式实现。
print(date.iloc[:,0:2])
'''
运行结果:
       产品    金额
订单编号           
d001  投影仪  2000
d002  马克笔   300
d003  打印机   298
d004  点钞机   349
d005  复印纸   100
d006  条码纸    34
'''
#3、同时选择行列数据 可以选择loc或者iloc方式来实现
#3.1使用loc方法有行和列标签同时选择行列数据
date=pd.read_excel("E:\\python\\Python_Code\\Excel\\订单表.xlsx",sheet_name=1,index_col=0)
date1=date.loc[["d001","d005"],["产品","金额"]]
print(date1)
'''
选择行标签为"d001","d005"且列标签为"产品","金额"的数据。
运行结果:
       产品    金额
订单编号           
d001  投影仪  2000
d005  复印纸   100
'''
date2=date.iloc[[0,4],[0,2]]
print(date2)
'''
运行结果:
       产品    金额
订单编号           
d001  投影仪  2000
d005  复印纸   100
'''
相关推荐
lichuangcsdn6 分钟前
【Spring AI 学习(一)】spring ai是什么
人工智能·学习·spring·spring ai
小大宇6 分钟前
python sqlalchemy 案例
开发语言·python
MartinYeung58 分钟前
[论文学习]AgentDojo:用于评估LLM智能体提示注入攻击与防御的动态环境
网络·学习
名字还没想好☜33 分钟前
Go 结构体内存对齐:调整字段顺序,同样的字段省下 40% 内存
开发语言·后端·golang·go·内存对齐
玛丽莲茼蒿35 分钟前
很难出错的Spring5(十)—— IOC进阶
java·开发语言·jvm
Ulyanov36 分钟前
雷达导引头仿真中的坐标系——从惯性系到量测角
开发语言·python·算法·系统仿真·雷达信号处理·雷达导引头
codeboss38 分钟前
做网页变更监控,我在“降噪”上踩过的 7 个坑
爬虫·python
果汁华1 小时前
CLI 命令行与 Python 框架实战
git·python·github
minglie11 小时前
蚂蚁S9矿板PS led驱动的三个实验-第1课 字符设备驱动
学习
Maiko Star1 小时前
FastAPI 进阶三部曲:中间件、依赖注入与 ORM 实战
python·中间件·fastapi