How to treat column with potentially meaningful NaNs My data set has a column that indicates the time taken (in days) for members on a site - each with an ID - to sign up for an event. This can range between 1 to 300 days, with about half of the rows filled with NaNs for members who have yet to sign up for any events. Another column indicates the channel through which members initially joined the site, for example through direct referrals, a forum, or other websites.

The question is: If I'd like to try and estimate which groups I should target, as well as the best time, to send an e-mail reminder that increases the chances that members sign up for an event, what would be the appropriate approach if I have no labels for whether past e-mail reminders is successful or not? I was thinking of taking the average (median) of days taken to sign up for an event grouped by the channel through which members joined the site, but that would remove half the data which seems like a waste. Is there an alternative method?
What you are asking about is called imputation - https://en.wikipedia.org/wiki/Imputation_(statistics)

Imputation basically means replacing NaNs with other data. There are lots of ways to do it and the method usually depends on the application. In this case you are the domain expert so you would be in the best position to decide what imputation method you should use.

Some common imputation methods are:

Mean (replace all NaNs with the average)

Median (replace all NaNs with the "middle" of the data)

MICE (Multiple Imputation by Chained Equations - probably overkill for your application, but worth looking into)

In your case I would go with mean imputation to start and then see what kind of results you get.