2012-12-18 9 views
12

S Buna benzer: iki sütun şeklinde değer bir listede olup olmadığını dataframe isteyen use a list of values to select rows from a pandas dataframeVeri kümesinden iki farklı sütun kullanarak satırları seçmek için pandaları mı kullanıyorsunuz?

. . Her iki sütun (# 1 ve # 4 sonuçlarını birleştirmek Return

import numpy as np 
from pandas import * 


d = {'one' : [1., 2., 3., 4] ,'two' : [5., 6., 7., 8.],'three' : [9., 16., 17., 18.]} 

df = DataFrame(d) 
print df 

checkList = [1,7] 

print df[df.one == 1 ]#1 
print df[df.one == 7 ]#2 
print df[df.two == 1 ]#3 
print df[df.two == 7 ]#4 

#print df[df.one == 1 or df.two ==7] 
print df[df.one.isin(checkList)] 

cevap

23

Neredeyse vardı, ama "bitwise or" operatörü kullanmak zorunda:

In [6]: df[(df.one == 1) | (df.two == 7)] 
Out[6]: 
    one three two 
0 1  9 5 
2 3  17 7 

In [7]: df[(df.one.isin(checkList)) | (df.two.isin(checkList))] 
Out[7]: 
    one three two 
0 1  9 5 
2 3  17 7 
İlgili konular