@@ -25,6 +25,10 @@ def get_engine(engine):
25
25
except ImportError :
26
26
pass
27
27
28
+ raise ImportError ("unable to find a usable engine\n "
29
+ "tried using: pyarrow, fastparquet\n \n "
30
+ + PyArrowImpl .PYARROW_INSTALL_INSTRUCTIONS )
31
+
28
32
if engine not in ['pyarrow' , 'fastparquet' ]:
29
33
raise ValueError ("engine must be one of 'pyarrow', 'fastparquet'" )
30
34
@@ -35,6 +39,10 @@ def get_engine(engine):
35
39
36
40
37
41
class PyArrowImpl (object ):
42
+ PYARROW_INSTALL_INSTRUCTIONS = ("you can install pyarrow via conda\n "
43
+ "conda install pyarrow -c conda-forge\n "
44
+ "\n or via pip\n "
45
+ "pip install -U pyarrow\n " )
38
46
39
47
def __init__ (self ):
40
48
# since pandas is a dependency of pyarrow
@@ -45,18 +53,11 @@ def __init__(self):
45
53
import pyarrow .parquet
46
54
except ImportError :
47
55
raise ImportError ("pyarrow is required for parquet support\n \n "
48
- "you can install via conda\n "
49
- "conda install pyarrow -c conda-forge\n "
50
- "\n or via pip\n "
51
- "pip install -U pyarrow\n " )
56
+ + PYARROW_INSTALL_INSTRUCTIONS )
52
57
53
58
if LooseVersion (pyarrow .__version__ ) < '0.4.1' :
54
59
raise ImportError ("pyarrow >= 0.4.1 is required for parquet"
55
- "support\n \n "
56
- "you can install via conda\n "
57
- "conda install pyarrow -c conda-forge\n "
58
- "\n or via pip\n "
59
- "pip install -U pyarrow\n " )
60
+ "support\n \n " + PYARROW_INSTALL_INSTRUCTIONS )
60
61
61
62
self ._pyarrow_lt_050 = LooseVersion (pyarrow .__version__ ) < '0.5.0'
62
63
self ._pyarrow_lt_060 = LooseVersion (pyarrow .__version__ ) < '0.6.0'
0 commit comments