python - Slicing a Pandas Dataframe Using Two Strings -


i have large dataframe. want select data machine1 , northamerica. if machine1 , northamerica in row of data, want keep row.

i know how 1 requirement:

df = df[df['machinenumber'].isin(['machine1'])] 

works , slices data need. however, don't know how 2 things.

i tried doing twice, separately so:

df = df[df['machinenumber'].isin(['machine1'])] df = df[df['region'].isin(['northamerica'])] 

and tried

df = df[(df['region']=='northamerica') & (df['machinenumber']=='machine1')]

but both attempts throw error typeerror: unsupported type add operation , it's returning empty dataframe column names. looked @ solutions online, focus on second solution numbers , not strings. how can properly?

an example dataframe input csv called sortingdata.csv 2 columns:

region  machinenumber eu  machine1 eu  machine1 eu  machine1 eu  machine1 eu  machine1 eu  machine1 eu  machine1 eu  machine1 eu  machine2 na  machine2 na  machine2 na  machine2 na  machine2 emea    machine2 na  machine2 na  machine2 na  machine1 na  machine1 na  machine1 na  machine1 na  machine1 na  machine1 na  machine1 na  machine1 na  machine1 

and code

import pandas pd df = pd.read_csv('sortingdata.csv')   df = df[(df['region']=='northamerica') & (df['machinenumber']=='machine1')] 

it runs fine prints , empty dataframe in case.

the code seems work on sample data.

# data # ================================== df     region machinenumber 0      eu      machine1 1      eu      machine1 2      eu      machine1 3      eu      machine1 4      eu      machine1 5      eu      machine1 6      eu      machine1 7      eu      machine1 ..    ...           ... 17     na      machine1 18     na      machine1 19     na      machine1 20     na      machine1 21     na      machine1 22     na      machine1 23     na      machine1 24     na      machine1  [25 rows x 2 columns]  # processing # =============================== df[(df['region']=='na') & (df['machinenumber']=='machine1')]     region machinenumber 16     na      machine1 17     na      machine1 18     na      machine1 19     na      machine1 20     na      machine1 21     na      machine1 22     na      machine1 23     na      machine1 24     na      machine1 

Comments