chore: remove deprecated distutils (#24001)

This commit is contained in:
Sebastian Liebscher
2023-05-11 18:00:04 +02:00
committed by GitHub
parent c9a0694116
commit c963416c09
8 changed files with 72 additions and 20 deletions

View File

@@ -15,10 +15,10 @@
# specific language governing permissions and limitations
# under the License.
from typing import Sequence, Union
from collections.abc import Iterable
from typing import Any, Sequence, Union
import pandas as pd
from numpy.distutils.misc_util import is_sequence
from superset.utils.pandas_postprocessing.utils import (
_is_multi_index_on_columns,
@@ -27,6 +27,13 @@ from superset.utils.pandas_postprocessing.utils import (
)
def is_sequence(seq: Any) -> bool:
if isinstance(seq, str):
return False
return isinstance(seq, Iterable)
def flatten(
df: pd.DataFrame,
reset_index: bool = True,
@@ -85,7 +92,7 @@ def flatten(
_columns = []
for series in df.columns.to_flat_index():
_cells = []
for cell in series if is_sequence(series) else [series]: # type: ignore
for cell in series if is_sequence(series) else [series]:
if pd.notnull(cell):
# every cell should be converted to string and escape comma
_cells.append(escape_separator(str(cell)))