diff --git a/lux/core/__init__.py b/lux/core/__init__.py index 2d72ffb8..23585503 100644 --- a/lux/core/__init__.py +++ b/lux/core/__init__.py @@ -22,7 +22,9 @@ def setOption(overridePandas=True): if overridePandas: - pd.DataFrame = pd.io.parsers.DataFrame = pd.core.frame.DataFrame = LuxDataFrame + pd.DataFrame = ( + pd.io.json._json.DataFrame + ) = pd.io.parsers.DataFrame = pd.core.frame.DataFrame = LuxDataFrame else: pd.DataFrame = pd.io.parsers.DataFrame = pd.core.frame.DataFrame = originalDF diff --git a/tests/test_pandas_coverage.py b/tests/test_pandas_coverage.py index e224e404..9e08c859 100644 --- a/tests/test_pandas_coverage.py +++ b/tests/test_pandas_coverage.py @@ -560,3 +560,29 @@ def test_str_replace(global_var): ], "Metadata is lost when going from Dataframe to Series." assert df.cardinality is not None, "Metadata is lost when going from Dataframe to Series." assert series.name == "Brand", "Pandas Series original `name` property not retained." + + +################ +# Read Tests # +################ + + +def test_read_json(global_var): + url = "https://raw.githubusercontent.com/lux-org/lux-datasets/master/data/car.json" + df = pd.read_json(url) + df._repr_html_() + assert list(df.recommendation.keys()) == [ + "Correlation", + "Distribution", + "Occurrence", + "Temporal", + ] + assert len(df.data_type_lookup) == 10 + + +def test_read_sas(global_var): + url = "https://github.com/lux-org/lux-datasets/blob/master/data/airline.sas7bdat?raw=true" + df = pd.read_sas(url, format="sas7bdat") + df._repr_html_() + assert list(df.recommendation.keys()) == ["Correlation", "Distribution", "Temporal"] + assert len(df.data_type_lookup) == 6