《python数据分析及其在水利工程中的应用》课件-25DataFrame选择基础:选择⾏与列_第1页
《python数据分析及其在水利工程中的应用》课件-25DataFrame选择基础:选择⾏与列_第2页
《python数据分析及其在水利工程中的应用》课件-25DataFrame选择基础:选择⾏与列_第3页
《python数据分析及其在水利工程中的应用》课件-25DataFrame选择基础:选择⾏与列_第4页
《python数据分析及其在水利工程中的应用》课件-25DataFrame选择基础:选择⾏与列_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精准定位DataFrame选择基础:选择⾏与列DataFrameselectionbasics:Selectrowsandcolumns经纬天下-成为【理数官】JingweiTianxia-Becomea'LiShuGuan'⻓⽼的指引:精准定位"回顾上次修⾏,你已学会构建和初步审视DataFrame这一'⽔⽂沙盘'。今⽇,我们将深⼊'沙盘'腹地,学习如何精准定位并提取所需的'⽔⽂信息'。"—智水长老升级任务进度TheprogressoftheUpgradetask当前任务任务:精准定位-DataFrame选择基础进行中>>>已完成任务任务:单脉梳理-PandasSeries构建沙盘-DataFrame创建与查看已完成任务:

条件筛选-DataFrame数据筛选读取奏报与修复遗漏-Pandas数据读取与缺失值处理后续任务待解锁完成本任务,成为【理数官】!本次任务:精准定位-DataFrame选择基础Thistask:PrecisePositioning-BasicDataFrameSelection任务⽬标学会如何选择DataFrame中的单个列或多个列学会使⽤.loc[]选择DataFrame中的单或多个⾏学会使⽤.iloc[]选择DataFrame中的单或多个⾏01第一节'经线'择取:选择列"Meridian"selection:Selectcolumn选取单'经':选择单个列Selectasingle"scripture":Selectasinglecolumnimport

pandas

as

pddata_dict=

{'⽔库名称':

[

'三峡⽔库

',

'丹江⼝⽔库

','⼩浪底⽔库

'],'总库容(亿⽴⽅⽶)':

[393,290.5,90.5],'所在河流':

[

'⻓江

',

'汉江',

'黄河'],'建成年份

':

[2006,1973,

2001]}df_reservoirs=pd.DataFrame(data_dict)#⽅法—

:使⽤⽅括号[]

(推荐)reservoir_names_series=df_reservoirs

[

'⽔库名称

']print("选择

'⽔库名称

'列

(返回Series):")print(reservoir_names_series)print(f"类型

:{type(reservoir_names_series)}")示例代码选择单个列的两种⽅法使⽤⽅括号[]配合列名(

字符串)1使⽤点.配合列名(属性访问⽅式)2⻓⽼推荐使⽤⽅括号⽅式,更通⽤且不易出错。⻓⽼锦囊选择单个列返回的是—个PandasSeries对象。选取众'经':选择多个列Selectthe"Classics":Choosemultiplecolumns#选择'⽔库名称

'和'建成年份

'两列selected_columns_df=df_reservoirs

[[

I⽔库名称

I,

I建成年份

I]

]print("\n选择

I⽔库名称

I和

I建成年份

I列:")

print(selected_columns_df)print(f"类型

:{type(selected_columns_df)}")示例代码选择多个列⻓⽼锦囊选择多个列返回的是—个新的DataFrame对象。要选择多个列,可以在⽅括号[]内传⼊一个包含所需列名的列表。DataFrame['列名1','列名2',...]新DataFrame02第二节'纬线'择取:选择⾏"Latitudeline"selection:Selectarow'定位神符':.loc[]与.iloc[]概览"LocationTalismans":Overviewof.loc[]and.iloc[].loc[]-基于标签的选择使⽤⾏索引的名称/标签来选择⾏可以⽤单个标签或标签列表也可以⽤布尔数组进⾏筛选⽀持标签切⽚

包含结束标签).iloc[]-基于整数位置的选择使⽤⾏的整数位置(从0开始)来选择⾏可以⽤单个整数或整数列表也可以⽤布尔数组进⾏筛选⽀持整数切⽚

(不包含结束位置)选择⾏如何选择?.loc[].iloc[]df.loc['⾏标签']知道⾏位置知道⾏标签df.iloc[0].loc[]单⾏选择.loc[]single-lineselection#假设我们为⽔库DataFrame设置⾏标签df_reservoirs_indexed=df_reservoirs.set_index(

I⽔库名称

I)

print("\n带索引的⽔库

DataFrame:")print(df_reservoirs_indexed)#使⽤.loc[]选择

'丹江⼝⽔库

'这—⾏(返回Series)danjiangkou_data=df_reservoirs_indexed.loc

[

I丹江⼝⽔库

I]

print("\n使⽤

.loc[]选择

I丹江⼝⽔库

I⾏:")print(danjiangkou_data)print(f"类型

:{type(danjiangkou_data)}")选择单⾏(通过⾏标签).loc[]多⾏选择.loc[]Multi-lineselection选择多⾏(通过⾏标签列表或切⽚)#对于默认整数索引的DataFramedf_daily_hydro=pd.DataFrame(

[[

'2023-10-01',145.5,

1200.0],[

'2023-10-02',145.2,

1150.5],[

'2023-10-03',145.8,

1250.2]],

columns=

[

'

⽇期

',

'⽔位(m)',

'流量(m³/s)'],index=

[

'记录—

',

'记录⼆',

'记录三

'])#选择'记录—

'到'记录⼆'

(标签切⽚

包含结束标签)hydro_slice=df_daily_hydro.loc

[

'记录—

':

'记录⼆']print("\n使⽤

.loc[]选择⾏

(标签切⽚):")print(hydro_slice)#选择

'三峡⽔库

'和'⼩浪底⽔库

'两⾏(返回DataFrame)two_reservoirs=df_reservoirs_indexed.loc

[

[

'三峡⽔库

',

'⼩浪底⽔库

']print("\n使⽤

.loc[]选择多⾏

(列表):")print(two_reservoirs).iloc[]单⾏选择.iloc[]single-lineselectionprint("\n原始⽔库DataFrame

(默认整数索引):")print(df_reservoirs)#使⽤

.iloc[]选择第—⾏

(位置0,返回Series)first_reservoir_iloc=df_reservoirs.iloc

[0]print("\n使⽤

.iloc[]选择第—⾏:")print(first_reservoir_iloc)print(f"类型

:{type(first_reservoir_iloc)}")选择单⾏(通过整数位置).iloc[]多⾏选择.iloc[]Multi-lineselection#使⽤

.iloc[]选择第—⾏和第三⾏

(位置0和2,返回DataFrame)reservoirs_0_and_2_iloc=df_reservoirs.iloc

[

[0,2]]print("\n使⽤

.iloc[]选择多⾏

(整数列表):")print(reservoirs_0_and_2_iloc)#使⽤

.iloc[]选择前两⾏

(位置0到1,不包含位置2)first_two_reservoirs_iloc=df_reservoirs.iloc

[0:2]#或df_reservoirs.iloc[:2]print("\n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论