如何使用Pandas獲取某個列中包含特定值的數據框中的行數?例如,我有以下數據框:如何獲取熊貓數據框中的行號?
ClientID LastName
0 34 Johnson
1 67 Smith
2 53 Brows
如何查找在'LastName'列中具有'Smith'的行的編號?
如何使用Pandas獲取某個列中包含特定值的數據框中的行數?例如,我有以下數據框:如何獲取熊貓數據框中的行號?
ClientID LastName
0 34 Johnson
1 67 Smith
2 53 Brows
如何查找在'LastName'列中具有'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
Int64Index([1], dtype='int64')
df.index完美。謝謝。 – Simon
df.loc[df.LastName == 'Smith']
將返回該行
ClientID LastName
1 67 Smith
和
df.loc[df.LastName == 'Smith'].index
將返回指數
Int64Index([1], dtype='int64')
注:列名「姓氏」和「姓氏」甚至「姓」三個唯一的名稱。最佳做法是首先使用df.columns檢查確切的名稱。如果你真的需要剝離所有的空格的列名,你可以先做
df.columns = [x.strip().replace(' ', '') for x in df.columns]
count_smiths = (df['LastName'] == 'Smith').sum()
這將返回包含姓氏「Smith」的行的總數,而不是個別行號。 –
試試這個:'df.LastName.eq(「史密斯」)和()' – MaxU
@MaxU這將返回包含姓氏「Smith」的行的總數,而不是單個行號。 –
終於!!!我發現了這個問題。幾個月以來,我一直在努力解決這個問題。 –