Hi there! Newbie here. I hope to get some help on a Python function.
Given a table (Stock Info) which has lots and lots of rows…how do I code to find the value of closing price on Nov 01, 2018?
(Attached is the first few rows of the table). Thank you!
This is a pandas question, which is a third-party package, not part of Python’s standard library. I suggest consulting a pandas-specific resource.
However, something like this should work where df is your DataFrame:
df.loc[df["Date"] == YOUR_DATE, "Close"]
The value of YOUR_DATE depends on whether date is stored as an actual datetime64 (pd.timestamp) or is a string, and if you want the scaler, you may need to get it with [0], but that’s an exercise for the reader. I encourage you to read the docs for more details. Best of luck.
Yes, date is a string so I attached quotations. Thank you so much! It worked 
Sir, I have a question though… What i was trying to use was .find and it doesn’t work… Is it not for a dataframe? Thank you.
As you can see from the docs and from dir(df), find is not a method defined for a DataFrame. However, you can use str.find() to search for a substring in each string in a str-format series, e.g. df["Date"].str.find(). Not sure if that’s what you want, though.
Also, you really should convert your dates to, well, dates, with pd.to_datetime(), but that’s out of scope here.
Thank you for these tips. will look into more details. just a few weeks beginning all these stuff so still clueless on various topics. Thank you!
1 Like