diff --git a/ci/requirements-3.4.build b/ci/requirements-3.4.build
deleted file mode 100644
index e8a957f70d40e0..00000000000000
--- a/ci/requirements-3.4.build
+++ /dev/null
@@ -1,4 +0,0 @@
-python=3.4*
-numpy=1.8.1
-cython=0.24.1
-libgfortran=1.0
diff --git a/ci/requirements-3.4.pip b/ci/requirements-3.4.pip
deleted file mode 100644
index 4e5fe52d56cf15..00000000000000
--- a/ci/requirements-3.4.pip
+++ /dev/null
@@ -1,2 +0,0 @@
-python-dateutil==2.2
-blosc
diff --git a/ci/requirements-3.4.run b/ci/requirements-3.4.run
deleted file mode 100644
index 3e12adae7dd9f1..00000000000000
--- a/ci/requirements-3.4.run
+++ /dev/null
@@ -1,18 +0,0 @@
-pytz=2015.7
-numpy=1.8.1
-openpyxl
-xlsxwriter
-xlrd
-xlwt
-html5lib
-patsy
-beautiful-soup
-scipy
-numexpr
-pytables
-lxml
-sqlalchemy
-bottleneck
-pymysql=0.6.3
-psycopg2
-jinja2=2.8
diff --git a/ci/requirements-3.4_SLOW.run b/ci/requirements-3.4_SLOW.run
deleted file mode 100644
index 90156f62c6e71e..00000000000000
--- a/ci/requirements-3.4_SLOW.run
+++ /dev/null
@@ -1,20 +0,0 @@
-python-dateutil
-pytz
-numpy=1.10*
-openpyxl
-xlsxwriter
-xlrd
-xlwt
-html5lib
-patsy
-beautiful-soup
-scipy
-numexpr=2.4.6
-pytables
-matplotlib
-lxml
-sqlalchemy
-bottleneck
-pymysql
-psycopg2
-jinja2=2.8
diff --git a/ci/requirements-3.4_SLOW.sh b/ci/requirements-3.4_SLOW.sh
deleted file mode 100644
index 24f1e042ed69e5..00000000000000
--- a/ci/requirements-3.4_SLOW.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-source activate pandas
-
-echo "install 34_slow"
-
-conda install -n pandas -c conda-forge matplotlib
diff --git a/ci/requirements-3.6.run b/ci/requirements-3.6.run
index 41c9680ce1b7e1..ae456f4f9f38a0 100644
--- a/ci/requirements-3.6.run
+++ b/ci/requirements-3.6.run
@@ -14,7 +14,7 @@ html5lib
 jinja2
 sqlalchemy
 pymysql
-feather-format
+# feather-format (not available on defaults ATM)
 # psycopg2 (not avail on defaults ATM)
 beautifulsoup4
 s3fs
diff --git a/ci/requirements-3.4_SLOW.build b/ci/requirements-3.6_SLOW.build
similarity index 58%
rename from ci/requirements-3.4_SLOW.build
rename to ci/requirements-3.6_SLOW.build
index 88212053af4722..1c4b46aea3865d 100644
--- a/ci/requirements-3.4_SLOW.build
+++ b/ci/requirements-3.6_SLOW.build
@@ -1,6 +1,6 @@
-python=3.4*
+python=3.6*
 python-dateutil
 pytz
 nomkl
-numpy=1.10*
+numpy
 cython
diff --git a/ci/requirements-3.6_SLOW.pip b/ci/requirements-3.6_SLOW.pip
new file mode 100644
index 00000000000000..e69de29bb2d1d6
diff --git a/ci/requirements-3.6_SLOW.run b/ci/requirements-3.6_SLOW.run
new file mode 100644
index 00000000000000..28131031f0bbd6
--- /dev/null
+++ b/ci/requirements-3.6_SLOW.run
@@ -0,0 +1,22 @@
+python-dateutil
+pytz
+numpy
+scipy
+openpyxl
+xlsxwriter
+xlrd
+xlwt
+numexpr
+pytables
+matplotlib
+lxml
+html5lib
+jinja2
+sqlalchemy
+pymysql
+# feather-format (not available on defaults ATM)
+# psycopg2 (not available on defaults ATM)
+beautifulsoup4
+s3fs
+xarray
+ipython
diff --git a/circle.yml b/circle.yml
index fa2da0680f3887..c4293a8e08f4bb 100644
--- a/circle.yml
+++ b/circle.yml
@@ -23,9 +23,9 @@ dependencies:
        0)
          sudo apt-get install language-pack-it && ./ci/install_circle.sh JOB="2.7_COMPAT" LOCALE_OVERRIDE="it_IT.UTF-8" ;;
        1)
-         sudo apt-get install language-pack-zh-hans && ./ci/install_circle.sh JOB="3.4_SLOW" LOCALE_OVERRIDE="zh_CN.UTF-8" ;;
+         sudo apt-get install language-pack-zh-hans && ./ci/install_circle.sh JOB="3.6_SLOW" LOCALE_OVERRIDE="zh_CN.UTF-8" ;;
        2)
-         sudo apt-get install language-pack-zh-hans && ./ci/install_circle.sh JOB="3.4" LOCALE_OVERRIDE="zh_CN.UTF-8" ;;
+         sudo apt-get install language-pack-zh-hans && ./ci/install_circle.sh JOB="3.6" LOCALE_OVERRIDE="zh_CN.UTF-8" ;;
        3)
          ./ci/install_circle.sh JOB="3.5_ASCII" LOCALE_OVERRIDE="C" ;;
       esac
diff --git a/doc/source/whatsnew/v0.21.0.txt b/doc/source/whatsnew/v0.21.0.txt
index 36dffc3d3378b8..63959578d92178 100644
--- a/doc/source/whatsnew/v0.21.0.txt
+++ b/doc/source/whatsnew/v0.21.0.txt
@@ -34,7 +34,7 @@ Other Enhancements
 Backwards incompatible API changes
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-
+- Support has been dropped for Python 3.4 (:issue:`15251`)
 
 .. _whatsnew_0210.api:
 
diff --git a/pandas/compat/__init__.py b/pandas/compat/__init__.py
index 2fe6359fd1ea62..9eacb9acef2c9c 100644
--- a/pandas/compat/__init__.py
+++ b/pandas/compat/__init__.py
@@ -7,7 +7,7 @@
 Key items to import for 2/3 compatible code:
 * iterators: range(), map(), zip(), filter(), reduce()
 * lists: lrange(), lmap(), lzip(), lfilter()
-* unicode: u() [u"" is a syntax error in Python 3.0-3.2]
+* unicode: u() [no unicode builtin in Python 3]
 * longs: long (int in Python 3)
 * callable
 * iterable method compatibility: iteritems, iterkeys, itervalues
@@ -110,7 +110,7 @@ def signature(f):
     unichr = chr
 
     # This was introduced in Python 3.3, but we don't support
-    # Python 3.x < 3.4, so checking PY3 is safe.
+    # Python 3.x < 3.5, so checking PY3 is safe.
     FileNotFoundError = FileNotFoundError
 
     # list-producing versions of the major Python iterating functions
diff --git a/setup.py b/setup.py
index 9a04bb69948693..ff537d5868db65 100755
--- a/setup.py
+++ b/setup.py
@@ -246,7 +246,6 @@ def build_extensions(self):
     'Programming Language :: Python :: 2',
     'Programming Language :: Python :: 3',
     'Programming Language :: Python :: 2.7',
-    'Programming Language :: Python :: 3.4',
     'Programming Language :: Python :: 3.5',
     'Programming Language :: Python :: 3.6',
     'Programming Language :: Cython',
diff --git a/tox.ini b/tox.ini
index 85c5d90fde7fb3..45ad7fc451e764 100644
--- a/tox.ini
+++ b/tox.ini
@@ -4,7 +4,7 @@
 # and then run "tox" from this directory.
 
 [tox]
-envlist = py27, py34, py35
+envlist = py27, py35, py36
 
 [testenv]
 deps =
@@ -49,14 +49,14 @@ deps =
     bigquery
     {[testenv]deps}
 
-[testenv:py34]
+[testenv:py35]
 deps =
-    numpy==1.8.0
+    numpy==1.10.0
     {[testenv]deps}
 
-[testenv:py35]
+[testenv:py36]
 deps =
-    numpy==1.10.0
+    numpy
     {[testenv]deps}
 
 [testenv:openpyxl1]