Issue
How can I get the number of the row in a dataframe that contains a certain value in a certain column using Pandas? For example, I have the following dataframe:
ClientID LastName
0 34 Johnson
1 67 Smith
2 53 Brows
How can I find the number of the row that has 'Smith' in 'LastName' column?
Solution
To get all indices that matches 'Smith'
>>> df[df['LastName'] == 'Smith'].index
Int64Index([1], dtype='int64')
or as a numpy array
>>> df[df['LastName'] == 'Smith'].index.to_numpy() # .values on older versions
array([1])
or if there is only one and you want the integer, you can subset
>>> df[df['LastName'] == 'Smith'].index[0]
1
You could use the same boolean expressions with .loc
, but it is not needed unless you also want to select a certain column, which is redundant when you only want the row number/index.
Answered By - joelostblom
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.