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
Post a Comment