2015-03-31 36 views
0

我有一個像下面這樣的數據框,並且從下面的數據中,我想提取user_category爲1,2,4,6作爲事務數據的位置,以及user_category 3是作爲促銷數據如何從python中的數據框提取變量中的特定類別

的TextData

id user_category operator circle 
23  1   vodafone mumbai 
45  2   airtel  andhra 
65  3   airtel  chennai 
23  6   vodafone mumbai 
45  1   airtel  gurgaon 
65  2   airtel  ongole 
23  4   vodafone mumbai 
45  1   airtel  telangana 
65  3   airtel  chennai 

這是我嘗試了,我得到了輸出我怎麼想,但我需要的是怎樣可以提取其中user_category爲1,2的數據, 4,6中的一段代碼

transactional1 = textdata[textdata['user_category'] == 1] 
transactional2 = textdata[textdata['user_category'] == 2] 
transactional3 = textdata[textdata['user_category'] == 4] 
transactional4 = textdata[textdata['user_category'] == 6] 
transactional = pd.concat((transactional1, transactional2, 
         transactional3, transactional4)) 

promotional = textdata[textdata['user_category'] == 3] 

預期方式:

transctional = textdata[textdata['user_category'] == 1,2,4,6] 

回答

0

要做到這一點,最簡單的方法是使用isin方法,它模仿蟒蛇1 in [1,2,3]類行爲:

transctional = textdata[textdata['user_category'].isin([1,2,4,6])] 

還有其他的方法可以做到這一點,但他們不那麼清楚和更詳細。

相關問題