<div dir="ltr">Hi, <div>My name is <a href="https://github.com/aniket-chowdhury?tab=repositories" target="_blank">Aniket Chowdhury</a> and I am second-year undergraduate student.</div><div><br></div><div>I wish to implement the DataFrame library for Boost. I have made the project proposal and am attaching the same.</div><div><div><div><div></div></div></div><div></div></div><div>As, this project is an expansion of the <a href="https://github.com/BoostGSoC19/data_frame" target="_blank">previous project</a> there are a few directions that I would like to work in whichever adds more to the project.</div><div><br></div><div>1. We could be to keep the existing code base as it is and implement new features on top of it.</div><div>2. We could try to restructure the code into <b>Modules</b>(C++20 feature) and then implement the features.</div><div>3. Or, we could restructure the code without ET but rather using <b>C++20 One Ranges</b>. This makes more sense to me as I believe that uBlas is being ported to C++20.</div><div><br></div><div>The DataFrame would include the following features:</div><div>1. All the features already present(union, combine, join).</div><div>2. Read/write from <b>DataFrame using JSON</b>(<span style="background-color:transparent;color:rgb(36,39,41);font-family:"Courier New";white-space:pre-wrap">boost::property_tree to DataFrame</span>)</div><div>3. Operator support for <span style="background-color:transparent;color:rgb(0,0,0);font-family:"Proxima Nova",sans-serif;font-weight:700;white-space:pre-wrap">addition, subtraction, multiplication, division, modulo and power, etc </span><span style="background-color:transparent;color:rgb(0,0,0);font-family:"Proxima Nova",sans-serif;white-space:pre-wrap">as well as support for comparison operators.</span></div><div>4. Functions to perform<span style="background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;font-family:"Proxima Nova",sans-serif;color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap"> </span><span style="background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;font-family:"Proxima Nova",sans-serif;color:rgb(0,0,0);font-weight:700;vertical-align:baseline;white-space:pre-wrap">apply, apply_element_wise, aggregate, transform and expand</span><span style="background-color:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;font-family:"Proxima Nova",sans-serif;color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap"> on a given DataFrame.</span><br></div>5. Data analysis tools for <span id="gmail-m_-63067745495130108gmail-docs-internal-guid-7ab2eedf-7fff-5324-29fc-108f6de832ec"><span style="font-family:"Proxima Nova",sans-serif;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">standard deviation, variance, mean, etc.</span></span><div>6. Re-indexing methods like <span id="gmail-m_-63067745495130108gmail-docs-internal-guid-97de9fde-7fff-ff47-7f83-0a08903e6481"><span style="font-family:"Proxima Nova",sans-serif;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">replace, duplicate, filter, etc.</span></span></div><div>7. Reshaping methods for <span id="gmail-m_-63067745495130108gmail-docs-internal-guid-ed39d162-7fff-e164-cd1e-4f0db510492b"><span style="font-family:"Proxima Nova",sans-serif;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">sorting, append, pivot, etc.</span></span></div><div><span style="font-family:"Proxima Nova",sans-serif;color:rgb(0,0,0);background-color:transparent;font-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"></span></div><div><font color="#000000" face="Proxima Nova, sans-serif"><span style="white-space:pre-wrap"><br></span></font></div><div><font color="#000000" face="Proxima Nova, sans-serif"><span style="white-space:pre-wrap"><b>Full Details</b> of the same can be found in the <b>Project Proposal</b>.<b><br></b></span></font><div><div><br></div><div>I have been in contact with David Bellot for the past week regarding GSoC. I have completed the first draft of the competency check and sent the same to him. I would love to work I am requesting him to be assigned as a mentor for the same.</div></div></div><div><div><b>PFA: </b><a href="https://docs.google.com/document/d/1wyegbUEbpOopaQSWtFd0a_ch4QeIERKXGVX6GJSSdBo/edit?usp=sharing" target="_blank" style="font-weight:bold">The Project Proposal</a>(linked in case the attachment fails)<br></div><div><br></div><div>This is an official application for the GSoC' 20. I am open to any and all suggestions. </div><font color="#888888"><div><br></div></font></div><font color="#888888"><div>Aniket Chowdhury</div></font></div>