数据的简单处理——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
'''
相关推荐
m0_602857767 小时前
Chart.js 4 中实现基于数据极值的垂直线性渐变填充
jvm·数据库·python
夏恪7 小时前
如何计算SQL同比环比数据_利用窗口函数LAG与LEAD
jvm·数据库·python
AI人工智能+电脑小能手7 小时前
【大白话说Java面试题】【Java基础篇】第19题:HashMap的key如何减少发生哈希冲突
java·开发语言·后端·面试·哈希算法·hash-index·hash
Titan20247 小时前
C++位图学习笔记
c++·笔记·学习
念恒123067 小时前
Python(运算与操作)
python·学习
qq_349317487 小时前
Tailwind CSS如何自定义间距数值_配置theme spacing扩展CSS边距
jvm·数据库·python
im_AMBER7 小时前
Leetcode 162 除了自身以外数组的乘积 | 接雨水
开发语言·javascript·数据结构·算法·leetcode
是个西兰花7 小时前
C++:异常
开发语言·c++·异常
u0110225127 小时前
HTML5多媒体资源动态替换Source标签的刷新机制
jvm·数据库·python
AI人工智能+电脑小能手7 小时前
【大白话说Java面试题】【Java基础篇】第18题:HashMap底层是如何扩容的
java·开发语言·面试·散列表·hash-index·hash