在Pandas Python中用给定的列选择有限的行

  • Post category:Python

在Pandas Python中选择有限的行通常有多个方法,以下是一个基本的攻略:

  1. 使用iloc方法选择有限的行

可以使用iloc(位置索引)方法根据行号选择有限的行。如果要选择多个行,请使用:符号进行分隔,例如:df.iloc[2:5]将选择第3到第5行。如果要选择特定列的行,请将列索引包含在内。示例如下:

“`
import pandas as pd

# 创建数据帧
data = {‘name’: [‘Amy’, ‘Bob’, ‘Cathy’, ‘David’, ‘Emily’],
‘age’: [25, 30, 21, 28, 32],
‘gender’: [‘F’, ‘M’, ‘F’, ‘M’, ‘F’]}
df = pd.DataFrame(data)

# 选择第2到第4行的数据
df.iloc[1:4]
“`

输出结果为:
name age gender
1 Bob 30 M
2 Cathy 21 F
3 David 28 M

  1. 使用loc方法选择有限的行
      

可以使用loc(label索引)方法选择索引的有限行。与iloc不同,loc方法基于行的标签或行名称选择行而不是基于行的位置。示例如下:

“`
import pandas as pd

# 创建数据帧
data = {‘name’: [‘Amy’, ‘Bob’, ‘Cathy’, ‘David’, ‘Emily’],
‘age’: [25, 30, 21, 28, 32],
‘gender’: [‘F’, ‘M’, ‘F’, ‘M’, ‘F’]}
df = pd.DataFrame(data)
df.set_index(‘name’, inplace=True) # 使用’name’列作为行索引

# 选择索引为’Bob’到’Cathy’的数据
df.loc[‘Bob’:’Cathy’]
“`

输出结果为:
age gender
name
Bob 30 M
Cathy 21 F

  1. 使用query方法选择有限行

query方法可以基于特定条件筛选数据框中的行。示例如下:

“`
import pandas as pd

# 创建数据帧
data = {‘name’: [‘Amy’, ‘Bob’, ‘Cathy’, ‘David’, ‘Emily’],
‘age’: [25, 30, 21, 28, 32],
‘gender’: [‘F’, ‘M’, ‘F’, ‘M’, ‘F’]}
df = pd.DataFrame(data)

# 选择年龄大于25岁的数据
df.query(‘age > 25’)
“`

输出结果为:
name age gender
1 Bob 30 M
3 David 28 M
4 Emily 32 F

以上是在Pandas Python中用给定的列选择有限的行的基本攻略,这里涉及到了三种方法,即iloclocquery,可以根据具体情况使用不同的方法进行选择。