2014-01-28 22 views
0

我的信息的數據幀。一列是排名。我只是想找到的秩爲2行,並獲得另一列項(稱爲「名稱」)。我可以找到行,並獲得名字,但它不是一個純文本的項目,我可以添加到其他文本。它是一個對象。Python的大熊貓得到一個文本值

如何剛剛得到的名稱作爲文本?

代碼:

print "The name of the 2nd best is: " + groupDF.loc[(DF['Rank']==2),'Name'] 

這使我行和Name的ID。我只是想Name

這就是我得到:

4 The name of the 2nd best is: Hawthorne 

    Name: CleanName, dtype: object 

我只是無法弄清楚如何搜索上得到答案。我得到很多其他的東西,但沒有這個答案。

在此先感謝。

+0

嘗試:'groupDF.iloc [(DF [ '等級'] == 2)]] [ '名稱']' – agconti

回答

3

在多一點點的細節:

我知道你有什麼樣的數據幀:

names = ["Almond","Hawthorn","Peach"] 
groupDF = pd.DataFrame({'Rank':[1,2,3],'Name':names}) 

groupDF.loc[(groupDF['Rank']==2),'Name']給你一個系列的對象。如果秩是獨一無二的那麼無論以下兩種可能性工作

groupDF.loc[(groupDF['Rank']==2),'Name'].item() 

groupDF.loc[(groupDF['Rank']==2),'Name'].iloc[0] 

結果:

'Hawthorn' 

如果秩不是唯一的,第二個仍然有效,並給你第一個命中,也就是命令創建的Series對象的第一個元素。

1

你需要調用導致Series對象的item()方法。