2024-10-01 04:55:27 发布
网友
如何使用Pandas获取包含特定列中特定值的数据帧中的行数?例如,我有以下数据帧:
ClientID LastName 0 34 Johnson 1 67 Smith 2 53 Brows
如何在“LastName”列中找到具有“Smith”的行的编号?
获取与“Smith”匹配的所有索引
>>> df.loc[df['LastName']=='Smith'].index Int64Index([1], dtype='int64')
或者
>>> df.loc[df['LastName']=='Smith'].index.values array([1])
或者如果只有一个,而您想要整数,那么只需要子集
>>> df.loc[df['LastName']=='Smith'].index[0] 1
df.index[df.LastName == 'Smith']
df.query('LastName == "Smith"').index
将返回所有行索引,其中LastName是Smith
LastName
Smith
Int64Index([1], dtype='int64')
df.loc[df.LastName == 'Smith']
将返回行
ClientID LastName 1 67 Smith
以及
df.loc[df.LastName == 'Smith'].index
将返回索引
注意:列名“Last Name”和“LastName”甚至“LastName”是三个唯一的名称。最佳实践是首先使用df.columns检查确切的名称。如果您真的需要去掉所有空格的列名,可以首先
df.columns = [x.strip().replace(' ', '') for x in df.columns]
获取与“Smith”匹配的所有索引
或者
或者如果只有一个,而您想要整数,那么只需要子集
或者
将返回所有行索引,其中
LastName
是Smith
将返回行
以及
将返回索引
注意:列名“Last Name”和“LastName”甚至“LastName”是三个唯一的名称。最佳实践是首先使用df.columns检查确切的名称。如果您真的需要去掉所有空格的列名,可以首先
相关问题 更多 >
编程相关推荐