2016-11-04 31 views
0
from pandas import Series, DataFrame 
data = {'language': ['Java', 'PHP', 'Python', 'R', 'C#'], 
     'year': [ 1995 , 1995 , 1991 ,1993, 2000]} 
frame = DataFrame(data) 
frame['IDE'] = Series(['Intellij','Notepad','IPython','R studio','VS']) 
print frame['IDE'] 
print 'VS' in frame['IDE'] 

正如上面所示,'VS'是frame ['IDE']之一。但是當我在最後一步打印時,會打印出False。確認系列中的變量

回答

0

它看起來像熊貓系列對象frame['IDE']正在索引中尋找您的搜索字詞。所以如果你做了print 3 in frame['IDE']那將是True

轉換系列的列表,然後它會如預期:

print 'VS' in list(frame['IDE']) 

或者你可以這樣做:

print frame.IDE.isin(['VS']).sum() == 1 
+0

謝謝!你的意思是它必須首先轉換成列表,「VS」可以在其中找到。 如果我想在框架中找到「VS」,我該如何編碼? 在列表(框架)中打印「VS」不正確。 –

+0

你是什麼意思「不正確」?當你輸入該行時,它不會打印爲真?我認爲你的意思是你不想將它轉換成列表,但這並不意味着它不正確。 – AlexG

+0

我在我的答案中增加了另一個選項,可能更符合您的喜好^ – AlexG