官术网_书友最值得收藏!

Time of day

To answer the next question, At what times of the day do I send and receive emails with Gmail? let's create a graph. We'll take a look at sent emails and received emails:

Let's create two sub-dataframe—one for sent emails and another for received emails:

sent = dfs[dfs['label']=='sent']
received = dfs[dfs['label']=='inbox']

It is pretty obvious, right? Remember, we set a couple of labels, sent and inbox, earlier. Now, let's create a plot.

2.irst, let's import the required libraries:

import matplotlib.pyplot as plt
from matplotlib.ticker import MaxNLocator
from scipy import ndimage
import matplotlib.gridspec as gridspec
import matplotlib.patches as mpatches

3.ow, let's create a function that takes a dataframe as an input and creates a plot. See the following function:

def plot_todo_vs_year(df, ax, color='C0', s=0.5, title=''):
ind = np.zeros(len(df), dtype='bool')
est = pytz.timezone('US/Eastern')

df[~ind].plot.scatter('year', 'timeofday', s=s, alpha=0.6, ax=ax, color=color)
ax.set_ylim(0, 24)
ax.yaxis.set_major_locator(MaxNLocator(8))
ax.set_yticklabels([datetime.datetime.strptime(str(int(np.mod(ts, 24))), "%H").strftime("%I %p") for ts in ax.get_yticks()]);

ax.set_xlabel('')
ax.set_ylabel('')
ax.set_title(title)
ax.grid(ls=':', color='k')

return ax

By now, you should be familiar with how to create a scatter plot. We discussed doing so in detail in Chapter 2, Visual Aids for EDA. If you are confused about some terms, it is suggested that you revisit that chapter. 

4.ow, let's plot both received and sent emails. Check out the code given here:

fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(15, 4))

plot_todo_vs_year(sent, ax[0], title='Sent')
plot_todo_vs_year(received, ax[1], title='Received')

The output of the preceding code is as follows:

Check out the preceding graph. The higher the density of the graph data points, the higher the number of emails. Note that the number of sent emails is less than the number of received emails. I received more emails than I sent from 2018 to 2020. Note that I received most of the emails between 03:00 PM and 09:00 AM. This graph gives a nice overview of the time of day of email activity. This answers the second question. 

主站蜘蛛池模板: 福建省| 浦城县| 乐山市| 东辽县| 开原市| 双城市| 胶南市| 石棉县| 呈贡县| 临汾市| 鄂伦春自治旗| 临沧市| 潮州市| 鲁山县| 建德市| 敖汉旗| 丰原市| 津市市| 呼和浩特市| 凉城县| 璧山县| 长春市| 湟中县| 安乡县| 泽库县| 阳新县| 孟村| 二连浩特市| 仁怀市| 依安县| 扬州市| 夹江县| 怀安县| 弋阳县| 和政县| 壶关县| 镇平县| 凤山县| 台东县| 南宫市| 浮山县|