58 KiB
58 KiB
In [3]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()
#datapath = '../3_data'
datapath = '../../3_data'
from os import chdir; chdir(datapath)
data = pd.read_csv('bank-additional-full.csv', sep=';')
vc = data.y.value_counts()
no_ratio_all = vc['no'] / data.shape[0]
sizes = range(1000, 40100, 1000)
no_ratio_smpl = []
for size in sizes:
data_smpl = data.sample(n=size)
vc = data_smpl.y.value_counts()
no_ratio_smpl.append(vc['no'] / data_smpl.shape[0])
## visualize results
ax = sns.lineplot(x=sizes, y=no_ratio_smpl)
plt.xlabel('smpl size')
plt.ylabel('no_ratio_smpl')
ax.axhline(no_ratio_all, ls='--', color='black');C:\Users\werne\anaconda3\Lib\site-packages\seaborn\_oldcore.py:1119: FutureWarning: use_inf_as_na option is deprecated and will be removed in a future version. Convert inf values to NaN before operating instead.
with pd.option_context('mode.use_inf_as_na', True):
C:\Users\werne\anaconda3\Lib\site-packages\seaborn\_oldcore.py:1119: FutureWarning: use_inf_as_na option is deprecated and will be removed in a future version. Convert inf values to NaN before operating instead.
with pd.option_context('mode.use_inf_as_na', True):