如何从Pandas DataFrame中选择行()

需要从Pandas DataFrame中选择行吗?
如果是这样,你将看到根据指定条件从Pandas DataFrame 中选择行的完整步骤。
从Pandas DataFrame中选择行的步骤第 1 步:收集数据
首先,你需要收集数据。以下是收集的有关盒子的数据示例

ColorShapePrice
GreenRectangle10
GreenRectangle15
GreenSquare5
BlueRectangle5
BlueSquare10
RedSquare15
RedSquare15
RedRectangle5
第 2 步:创建数据帧
准备好数据后,你需要创建一个 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是条件
这是我们示例的完整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_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中选择行()】最后,以下来源提供了有关索引和选择数据的附加信息。

    推荐阅读