Repository: modin-project/modin

Issue:
BUG: Deprecation Warning 'series.append' use pandas.concat instead
### Modin version checks

- [X] I have checked that this issue has not already been reported.

- [X] I have confirmed this bug exists on the latest released version of Modin.

- [X] I have confirmed this bug exists on the main branch of Modin. (In order to do this you can follow [this guide](https://modin.readthedocs.io/en/stable/getting_started/installation.html#installing-from-the-github-master-branch).)


### Reproducible Example

```python
import modin.pandas as pd
data = {'id': ["ajajajajajjajajajajajaja", "jajjajajajajajajajajja"]}
df = pd.DataFrame(data)
df['ID_short'] = df['id'].str.slice(0, 3)
```


### Issue Description

The append method is depreciated since pandas 1.4.0 and should not be used anymore. Use pandas.concat instead.
(https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.append.html)
With pandas this warning doesn't occur.

### Expected Behavior

No warnings should appear.

### Error Logs

<details>

```python-traceback

FutureWarning: The series.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead.

```

</details>


### Installed Versions

<details>


INSTALLED VERSIONS
------------------
commit           : 621bc10e16c21ca4270a4c2a25aa05f814f2686b
python           : 3.9.10.final.0
python-bits      : 64
OS               : Linux
OS-release       : 5.14.0-70.26.1.el9_0.x86_64
Version          : #1 SMP PREEMPT Fri Sep 2 16:07:40 EDT 2022
machine          : x86_64
processor        : x86_64
byteorder        : little
LC_ALL           : None
LANG             : en_US.UTF-8
LOCALE           : en_US.UTF-8

Modin dependencies
------------------
modin            : 0.16.0
ray              : 2.0.0
dask             : 2022.01.1
distributed      : 2022.01.1
hdk              : None

pandas dependencies
-------------------
pandas           : 1.5.0
numpy            : 1.23.2
pytz             : 2022.2.1
dateutil         : 2.8.2
setuptools       : 53.0.0
pip              : 21.2.3
Cython           : 0.29.32
pytest           : None
hypothesis       : None
sphinx           : None
blosc            : None
feather          : None
xlsxwriter       : None
lxml.etree       : 4.6.5
html5lib         : None
pymysql          : 1.0.2
psycopg2         : 2.9.3
jinja2           : 3.1.2
IPython          : 8.4.0
pandas_datareader: None
bs4              : 4.11.1
bottleneck       : None
brotli           : None
fastparquet      : None
fsspec           : 2022.7.1
gcsfs            : None
matplotlib       : 3.5.3
numba            : None
numexpr          : None
odfpy            : None
openpyxl         : None
pandas_gbq       : None
pyarrow          : 6.0.1
pyreadstat       : None
pyxlsb           : None
s3fs             : None
scipy            : 1.9.0
snappy           : None
sqlalchemy       : 1.4.40
tables           : None
tabulate         : 0.8.10
xarray           : None
xlrd             : None
xlwt             : None
zstandard        : None
tzdata           : None



</details>



Discussion:
@benaurelschill thank you for reporting this bug. I can reproduce it with your script at Modin version 621bc10e16c21ca4270a4c2a25aa05f814f2686b. I'm working on a small fix.

Resolving patch:
diff --git a/modin/core/dataframe/pandas/dataframe/dataframe.py b/modin/core/dataframe/pandas/dataframe/dataframe.py
--- a/modin/core/dataframe/pandas/dataframe/dataframe.py
+++ b/modin/core/dataframe/pandas/dataframe/dataframe.py
@@ -2833,7 +2833,7 @@ def _compute_new_widths():
             new_columns = self.columns.append([other.columns for other in others])
             new_index = joined_index
             if self._dtypes is not None and all(o._dtypes is not None for o in others):
-                new_dtypes = self.dtypes.append([o.dtypes for o in others])
+                new_dtypes = pandas.concat([self.dtypes] + [o.dtypes for o in others])
             # If we have already cached the width of each column in at least one
             # of the column's partitions, we can build new_widths for the new
             # frame. Typically, if we know the width for any partition in a
diff --git a/modin/pandas/base.py b/modin/pandas/base.py
--- a/modin/pandas/base.py
+++ b/modin/pandas/base.py
@@ -2585,9 +2585,9 @@ def _shift(self, periods, freq, axis, fill_value):  # noqa: PR01, RT01, D200
         if freq is None:
             if axis == "index" or axis == 0:
                 new_frame = (
-                    filled_df.append(self.iloc[:-periods], ignore_index=True)
+                    pd.concat([filled_df, self.iloc[:-periods]], ignore_index=True)
                     if periods > 0
-                    else self.iloc[-periods:].append(filled_df, ignore_index=True)
+                    else pd.concat([self.iloc[-periods:], filled_df], ignore_index=True)
                 )
                 new_frame.index = self.index.copy()
                 if isinstance(self, DataFrame):
diff --git a/modin/pandas/dataframe.py b/modin/pandas/dataframe.py
--- a/modin/pandas/dataframe.py
+++ b/modin/pandas/dataframe.py
@@ -34,6 +34,7 @@
 from typing import IO, Optional, Union, Iterator
 import warnings
 
+import modin
 from modin.pandas import Categorical
 from modin.error_message import ErrorMessage
 from modin.utils import (
@@ -1421,7 +1422,7 @@ def memory_usage(self, index=True, deep=False):  # noqa: PR01, RT01, D200
                 self._query_compiler.memory_usage(index=False, deep=deep)
             )
             index_value = self.index.memory_usage(deep=deep)
-            return Series(index_value, index=["Index"]).append(result)
+            return modin.pandas.concat([Series(index_value, index=["Index"]), result])
         return super(DataFrame, self).memory_usage(index=index, deep=deep)
 
     def merge(


Test patch: