python函数用法——iloc、loc、columns

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

在pandas中,iloc、loc和.columns是DataFrame和Series对象上非常常用的属性或方法,它们各自有不同的用途和用法。


提示:以下是本篇文章正文内容,下面案例可供参考

一、.iloc用法

基于整数位置的索引器,主要用于通过整数位置来选择数据。它接受行和列的位置(基于0的索引)作为参数。如果只想选择行,可以省略列参数(默认为选择所有列);反之亦然。

(一)初始化

假设我们有一个 DataFrame data,其结构如下:

import pandas as pd  
  
data = pd.DataFrame({  
    'A': [1, 2, 3, 4],  
    'B': [5, 6, 7, 8],  
    'C': [9, 10, 11, 12]  
})  
  
print(data)

输出

   A  B   C  
0  1  5   9  
1  2  6  10  
2  3  7  11  
3  4  8  12

(二)使用步骤

1.选择单行

选择第一行(记住,Python 是从 0 开始计数的):

print(data.iloc[0])

输出:

A    1  
B    5  
C    9  
Name: 0, dtype: int64

2.选择多行

选择第1行和第2行:

print(data.iloc[0:2])

输出:

   A  B   C  
0  1  5   9  
1  2  6  10

选择前两行:

print(data.iloc[:2])

输出:

   A  B   C
0  1  5   9
1  2  6  10

选择后两行:

print(data.iloc[-2:])

输出:

   A  B   C
2  3  7  11
3  4  8  12

3.选择单列

选择第二列(列索引也是从 0 开始的):

print(data.iloc[:, 1])

输出:

0    5  
1    6  
2    7  
3    8  
Name: B, dtype: int64

4.选择多列

选择第2列和第3列:

print(data.iloc[:, 1:3])

输出:

   B   C  
0  5   9  
1  6  10  
2  7  11  
3  8  12

5.选择特定行或特定列

选择第3行和第3列:

print(data.iloc[1, 2])

输出:

10

二、.loc用法:

.loc 是基于标签的索引器,主要用于通过行标签和列标签来选择数据。它接受行标签和列标签作为参数。同样,如果只想选择行或列,可以省略相应的参数。

(一)初始化

假设我们有一个 DataFrame data,其结构如下:

import pandas as pd  
  
data = pd.DataFrame({  
    'A': [1, 2, 3, 4],  
    'B': [5, 6, 7, 8],  
    'C': [9, 10, 11, 12]  
})  
  
print(data)

输出

   A  B   C  
0  1  5   9  
1  2  6  10  
2  3  7  11  
3  4  8  12

(二)使用步骤

1.选择单行

选择第1行

print(data.loc[0])

output:
A    1
B    5
C    9
Name: 0, dtype: int64

2.选择多行

print(data.loc[0:2])

output:
   A  B   C
0  1  5   9
1  2  6  10
2  3  7  11

3.选择单列

print(data.loc[:]['A'])

output:
0    1
1    2
2    3
3    4
Name: A, dtype: int64

4.选择多列

print(data.loc[:][['A','B']])

output:
   A  B
0  1  5
1  2  6
2  3  7
3  4  8

5.选择特定行特定列

print(data.loc[0:2][['A','C']])

output:
   A   C
0  1   9
1  2  10
2  3  11

6.基于条件选择

value = data.loc[(data['A']>1) & (data['B']<8)]
print(value)

output:
   A  B   C
1  2  6  10
2  3  7  11

三、.columns用法

.columns 是DataFrame的一个属性,用于获取或设置DataFrame的列标签。当你需要查看DataFrame的列标签时,可以直接访问.columns属性。如果你想修改列标签,也可以给它赋一个新的索引列表。

(一)初始化

假设我们有一个 DataFrame data,其结构如下:

import pandas as pd  
  
data = pd.DataFrame({  
    'A': [1, 2, 3, 4],  
    'B': [5, 6, 7, 8],  
    'C': [9, 10, 11, 12]  
})  
  
print(data)

输出

   A  B   C  
0  1  5   9  
1  2  6  10  
2  3  7  11  
3  4  8  12

(二)使用步骤

1.选择列名

print(data.columns)

output:
Index(['A', 'B', 'C'], dtype='object')

2.选择单列

print(data['B'])

output:
0    5
1    6
2    7
3    8
Name: B, dtype: int64

3.选择多列

print(data[['B','A']])

output:
   B  A
0  5  1
1  6  2
2  7  3
3  8  4

4.其他用法

arr = pd.DataFrame()
for i in data.columns:
    value = data[i]+data[i].mean()
    arr[i] = value
    print(value)
    print()

print(arr)

输出:

0    3.5
1    4.5
2    5.5
3    6.5
Name: A, dtype: float64

0    11.5
1    12.5
2    13.5
3    14.5
Name: B, dtype: float64

0    19.5
1    20.5
2    21.5
3    22.5
Name: C, dtype: float64

     A     B     C
0  3.5  11.5  19.5
1  4.5  12.5  20.5
2  5.5  13.5  21.5
3  6.5  14.5  22.5

总结

.iloc 用于通过整数位置索引来选择数据。
.loc 用于通过标签索引来选择数据。
.columns 是DataFrame的一个属性,用于获取或设置列标签。

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值