需要从Pandas DataFrame中选择行吗?
如果是这样,你将看到根据指定条件从Pandas DataFrame 中选择行的完整步骤。
从Pandas DataFrame中选择行的步骤第 1 步:收集数据
首先,你需要收集数据。以下是收集的有关盒子的数据示例:
Color | Shape | Price |
Green | Rectangle | 10 |
Green | Rectangle | 15 |
Green | Square | 5 |
Blue | Rectangle | 5 |
Blue | Square | 10 |
Red | Square | 15 |
Red | Square | 15 |
Red | Rectangle | 5 |
准备好数据后,你需要创建一个 DataFrame以在 Python 中捕获该数据。
对于我们的示例,你可以使用以下代码创建一个 DataFrame:
import pandas as pdboxes = {'Color': [
'Green','Green','Green','Blue','Blue','Red','Red','Red'],
'Shape': [
'Rectangle','Rectangle','Square','Rectangle','Square','Square','Square','Rectangle'],
'Price': [
10,15,5,5,10,15,15,5]
}df = pd.DataFrame(boxes, columns= [
'Color','Shape','Price'])
print (df)
用Python运行代码,你会看到这个 DataFrame:
ColorShapePrice
0GreenRectangle10
1GreenRectangle15
2GreenSquare5
3BlueRectangle5
4BlueSquare10
5RedSquare15
6RedSquare15
7RedRectangle5
第 3 步:从Pandas DataFrame中选择行
你可以使用以下逻辑根据指定条件从Pandas DataFrame中选择行:
df.loc[df[‘column name’] condition]
例如,如果要获取颜色为 green的行,则需要应用:
df.loc[df[‘Color’] == ‘Green’]
其中:
- 颜色color是列名
- 绿色green是条件
import pandas as pdboxes = {'Color': [
'Green','Green','Green','Blue','Blue','Red','Red','Red'],
'Shape': [
'Rectangle','Rectangle','Square','Rectangle','Square','Square','Square','Rectangle'],
'Price': [
10,15,5,5,10,15,15,5]
}df = pd.DataFrame(boxes, columns= [
'Color','Shape','Price'])select_color = df.loc[
df[
'Color'] == 'Green']
print (select_color)
运行代码后,你将获得颜色为绿色的行:
ColorShapePrice
0GreenRectangle10
1GreenRectangle15
2GreenSquare5
从Pandas DataFrame中选择行的其他示例现在让我们查看其他示例,以更好地了解从 Pandas DataFrame 中选择行的过程。
示例 1:选择价格等于或大于 10 的行
要获取价格等于或大于 10 的所有行,你需要应用以下条件:
df.loc[df[‘Price’] > = 10]
这是完整的Pandas DataFrame中选择行示例代码:
import pandas as pdboxes = {'Color': [
'Green','Green','Green','Blue','Blue','Red','Red','Red'],
'Shape': [
'Rectangle','Rectangle','Square','Rectangle','Square','Square','Square','Rectangle'],
'Price': [
10,15,5,5,10,15,15,5]
}df = pd.DataFrame(boxes, columns= [
'Color','Shape','Price'])select_price = df.loc[
df[
'Price'] >= 10]
print (select_price)
运行代码,你将获得价格等于或大于 10 的所有行:
ColorShapePrice
0GreenRectangle10
1GreenRectangle15
4BlueSquare10
5RedSquare15
6RedSquare15
示例 2:选择颜色为绿色且形状为矩形的行
现在的目标是根据两个条件选择行 :
- 颜色为绿色;和
- 形状是长方形
df.loc[(df[‘Color’] == ‘Green’) & (df[‘Shape’] == ‘Rectangle’)]
Pandas DataFrame如何选择行?把所有东西放在一起代码如下:
import pandas as pdboxes = {'Color': [
'Green','Green','Green','Blue','Blue','Red','Red','Red'],
'Shape': [
'Rectangle','Rectangle','Square','Rectangle','Square','Square','Square','Rectangle'],
'Price': [
10,15,5,5,10,15,15,5]
}df = pd.DataFrame(boxes, columns= [
'Color','Shape','Price'])color_and_shape = df.loc[
(df[
'Color'] == 'Green') &
(df[
'Shape'] == 'Rectangle')]
print (color_and_shape)
运行代码,你将获得带有绿色和矩形形状的行:
ColorShapePrice
0GreenRectangle10
1GreenRectangle15
示例 3:选择颜色为绿色或形状为矩形的行
你还可以根据一个或另一个条件选择行。例如,你可以选择颜色为绿色 或形状为矩形的行。
要实现此目标,你可以使用 | 符号如下:
df.loc[(df[‘Color’] == ‘Green’) | (df[‘Shape’] == ‘Rectangle’)]
Pandas DataFrame如何选择行?这是完整的 Python 代码:
import pandas as pdboxes = {'Color': [
'Green','Green','Green','Blue','Blue','Red','Red','Red'],
'Shape': [
'Rectangle','Rectangle','Square','Rectangle','Square','Square','Square','Rectangle'],
'Price': [
10,15,5,5,10,15,15,5]
}df = pd.DataFrame(boxes, columns= [
'Color','Shape','Price'])color_or_shape = df.loc[
(df[
'Color'] == 'Green') | (df[
'Shape'] == 'Rectangle')]
print (color_or_shape)
这是结果,其中颜色为绿色或形状为矩形:
ColorShapePrice
0GreenRectangle10
1GreenRectangle15
2GreenSquare5
3BlueRectangle5
7RedRectangle5
示例 4:选择价格不等于 15 的行
从Pandas DataFrame中选择行:你可以使用符号组合!= 来选择价格 不 等于15 的行:
df.loc[df[‘Price’] != 15]
Pandas DataFrame中选择行示例代码如下:
import pandas as pdboxes = {'Color': [
'Green','Green','Green','Blue','Blue','Red','Red','Red'],
'Shape': [
'Rectangle','Rectangle','Square','Rectangle','Square','Square','Square','Rectangle'],
'Price': [
10,15,5,5,10,15,15,5]
}df = pd.DataFrame(boxes, columns= [
'Color','Shape','Price'])not_eqaul_to = df.loc[
df[
'Price'] != 15]
print (not_eqaul_to)
运行代码后,你将获得价格不等于 15 的所有行:
ColorShapePrice
0GreenRectangle10
2GreenSquare5
3BlueRectangle5
4BlueSquare10
7RedRectangle5
【如何从Pandas DataFrame中选择行()】最后,以下来源提供了有关索引和选择数据的附加信息。
推荐阅读
- 如何使用Concat联合Pandas DataFrames()
- 如何从Pandas DataFrame中删除重复项()
- 在Python中如何使用Pandas创建数据透视表()
- 如何对Pandas DataFrame进行排序(示例代码)
- 如何将Pandas DataFrame转换为列表()
- 如何连接Pandas DataFrame中的列值()
- 在Pandas DataFrame中应用IF条件的5种方法
- 安装系统 电脑重装系统,教您电脑怎样运用U盘重装win7系统
- u盘东西删不掉,教您如何恢复正常