📅  最后修改于: 2023-12-03 15:22:25.880000             🧑  作者: Mango
在处理数据框时,经常需要根据列名或行索引来过滤数据。我们可以使用索引列表来选择想要的行或列。本文将介绍如何使用索引列表来过滤数据框。
我们可以使用 iloc
属性和索引列表来选择想要的列。 iloc
属性用来通过整数位置来选择行或列。
假设我们有以下数据框 df
:
import pandas as pd
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 20, 30, 35],
'gender': ['F', 'M', 'M', 'M']
}
df = pd.DataFrame(data)
现在我们想选择 name
和 gender
两列。我们可以使用以下代码:
cols = [0, 2] # 索引列表
df_filter = df.iloc[:, cols] # 选择特定列
print(df_filter)
输出:
name gender
0 Alice F
1 Bob M
2 Charlie M
3 David M
在 iloc
中,第一个参数为行索引,第二个参数为列索引。如果我们想要选择所有行,那么可以使用 :
来表示所有行。
cols
列表中的元素为整数,分别代表要选择的列的位置。在本例中,我们选择第 1 列和第 3 列,也就是 name
和 gender
列。注意索引从 0 开始。
我们可以使用 iloc
属性和索引列表来选择想要的行。与选择列一样,我们可以使用 :
来选择所有列。
假设我们有以下数据框 df
:
import pandas as pd
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 20, 30, 35],
'gender': ['F', 'M', 'M', 'M']
}
df = pd.DataFrame(data)
现在我们想选择第 1 到第 2 行。我们可以使用以下代码:
rows = [1, 2] # 索引列表
df_filter = df.iloc[rows, :] # 选择特定行
print(df_filter)
输出:
name age gender
1 Bob 20 M
2 Charlie 30 M
在 iloc
中,第一个参数为行索引,第二个参数为列索引。如果我们想要选择所有列,那么可以使用 :
来表示所有列。
rows
列表中的元素为整数,分别代表要选择的行的位置。在本例中,我们选择第 1 行和第 2 行,也就是 Bob
和 Charlie
行。注意索引从 0 开始。
我们可以使用索引列表来选择数据框中的特定行或列。使用 iloc
属性和索引列表,我们可以根据整数位置来选择行或列。在选择列时, :
表示所有行;在选择行时, :
表示所有列。