diff --git a/pygam/__init__.py b/pygam/__init__.py
index <HASH>..<HASH> 100644
--- a/pygam/__init__.py
+++ b/pygam/__init__.py
@@ -14,4 +14,4 @@ from pygam.pygam import InvGaussGAM
 __all__ = ['GAM', 'LinearGAM', 'LogisticGAM', 'GammaGAM', 'PoissonGAM',
            'InvGaussGAM']
 
-__version__ = '0.2.13'
+__version__ = '0.2.14'
diff --git a/pygam/utils.py b/pygam/utils.py
index <HASH>..<HASH> 100644
--- a/pygam/utils.py
+++ b/pygam/utils.py
@@ -125,8 +125,8 @@ def check_dtype(X, ratio=.95):
 
     dtypes = []
     for feat in X.T:
-        dtype = feat.dtype.type
-        if not issubclass(dtype, (np.int, np.float)):
+        dtype = feat.dtype.kind
+        if dtype not in ['f', 'i']:
             raise ValueError('data must be type int or float, '\
                              'but found type: {}'.format(dtype))
better way of checking dtypes