網站首頁 編程語言 正文
實際操作中我們經常需要尋找數據的某行或者某列,這里介紹我在使用Pandas時用到的兩種方法:iloc和loc。
loc:通過行、列的名稱或標簽來索引
iloc:通過行、列的索引位置來尋找數據
首先,我們先創建一個Dataframe,生成數據,用于下面的演示
import pandas as pd import numpy as np # 生成DataFrame data = pd.DataFrame(np.arange(30).reshape((6,5)), columns=['A','B','C','D','E']) # 寫入本地 data.to_excel("D:\\實驗數據\\data.xls", sheet_name="data") print(data)
1.loc方法
loc方法是通過行、列的名稱或者標簽來尋找我們需要的值。
(1)讀取第二行的值
# 索引第二行的值,行標簽是“1” data1 = data.loc[1]
????????結果:
備注: #下面兩種語法效果相同 data.loc[1] == data.loc[1,:]
?(2)讀取第二列的值
# 讀取第二列全部值 data2 = data.loc[ : ,"B"]
結果:
(3)同時讀取某行某列
# 讀取第1行,第B列對應的值 data3 = data.loc[ 1, "B"]
結果:
(4)讀取DataFrame的某個區域
# 讀取第1行到第3行,第B列到第D列這個區域內的值 data4 = data.loc[ 1:3, "B":"D"]
結果:
(5)根據條件讀取
# 讀取第B列中大于6的值 data5 = data.loc[ data.B > 6] #等價于 data5 = data[data.B > 6]
結果:
(6)也可以進行切片操作
# 進行切片操作,選擇B,C,D,E四列區域內,B列大于6的值 data1 = data.loc[ data.B >6, ["B","C","D","E"]]
結果:
2.iloc方法
iloc方法是通過索引行、列的索引位置[index, columns]來尋找值
(1)讀取第二行的值
# 讀取第二行的值,與loc方法一樣 data1 = data.iloc[1] # data1 = data.iloc[1, :],效果與上面相同
結果:
(2)讀取第二列的值
# 讀取第二列的值 data1 = data.iloc[:, 1]
結果:
(3)同時讀取某行某列
# 讀取第二行,第二列的值 data1 = data.iloc[1, 1]
結果:
(4)進行切片操作
# 按index和columns進行切片操作 # 讀取第2、3行,第3、4列 data1 = data.iloc[1:3, 2:4]
結果:
注意:
這里的區間是左閉右開,data.iloc[1:3, 2:4]中的第4行、第5列取不到
補充:利用loc、iloc提取所有數據
In[8]:data.loc[:,:] #取A,B,C,D列的所有行 Out[8]: A B C D a 0 1 2 3 b 4 5 6 7 c 8 9 10 11 d 12 13 14 15 In[9]:data.iloc[:,:] #取第0,1,2,3列的所有行 Out[9]: A B C D a 0 1 2 3 b 4 5 6 7 c 8 9 10 11 d 12 13 14 15
利用loc函數,根據某個數據來提取數據所在的行
In[10]: data.loc[data['A']==0] #提取data數據(篩選條件: A列中數字為0所在的行數據) Out[10]: A B C D a 0 1 2 3
總結?
原文鏈接:https://blog.csdn.net/Bigboss7/article/details/118597351
相關推薦
- 2022-05-26 pandas進行數據輸入和輸出的方法詳解_python
- 2023-03-22 python實現四舍五入方式_python
- 2022-09-08 Go語言中的包Package詳解_Golang
- 2022-10-21 React?模式之純組件使用示例詳解_React
- 2022-07-07 go語言心跳超時的實現示例_Golang
- 2022-07-11 python中的多cpu并行編程_python
- 2022-07-16 MultipartFile與base64互轉
- 2022-12-21 Redis?RDB與AOF持久化方式詳細講解_Redis
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支