I have a dataframe that contains 4 columns as follows:
nb,state,freebk,freebs
901,1,6,14
903,0,2,18
904,1,10,20
905,1,15,5
I want to add all the rows that have state equal to 1 to a new dataframe
Desired new dataframe:
nb,state,freebk,freebs
901,1,6,14
904,1,10,20
905,1,15,5
I tried the following
openStationDF = pd.DataFrame(columns=['nb','state','freebk','freebs'])
t = 0
for i in range(len(stationDF)):
station = stationDF.iloc[i]
if station[0] == 1:
openStationDF.loc[t] = station
t = t + 1
This code added successfully the stations with state = 1 but what is happing is that the nb of the station is = NaN and the Name of the station started from 0 and then incrementing by one.
nb NaN
state 1.0
freebk 6.0
freebs 14.0
Name: 0, dtype: float64
nb NaN
state 1.0
freebk 10.0
freebs 20.0
Name: 1, dtype: float64
nb NaN
state 1.0
freebk 15.0
freebs 5.0
Name: 2, dtype: float64
I want the name to equal the nb of the station(name = 901...)
Thanks...