I want to select some points from a pandas data frame df
under a certain condition and then add them to a plot using mplfinance
.
Im using the mpf.make_addplot()
function. This takes a list in the form of:
signal=[nan, nan, 7, nan, 6, 8, nan]
However selecting values from a pandas df gives a list like so:
df = pd.DataFrame({'column': [1, 2, 7, 0, 6, 8, -9]
pandaslist = df.loc[ df.column > 5 ]
pandaslist = [7,6,8]
(Ofcourse the pandaslist has an index)
Is there a way to use pandas loc
to get a list in form of the signal
list?
Is there a way to make mpf
to accept input in the style of the pandaslist
?
.loc
doesn't work like that.
Instead, you can use df.where()
to select the values you want while nullifying the others.
df.where(df['column'] > 5)
column
0 NaN
1 NaN
2 7.0
3 NaN
4 6.0
5 8.0
6 NaN