Typeerror: cannot concatenate object of type ‘‘; only series and dataframe objs are valid

The error message “TypeError: cannot concatenate object of type ‘numpy.ndarray’; only series and dataframe objects are valid” occurs when you try to concatenate a numpy array with another numpy array, series, or dataframe. Numpy arrays cannot be concatenated directly.

To resolve this error and perform concatenation, you need to convert the numpy array into a pandas series or dataframe first. Here are a few examples to illustrate the solution:

Example 1: Concatenating Two Pandas Series


import pandas as pd
import numpy as np

array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])

series1 = pd.Series(array1)
series2 = pd.Series(array2)

concatenated_series = pd.concat([series1, series2])

print(concatenated_series)
    

In this example, we create two numpy arrays array1 and array2. We then convert these arrays into pandas series series1 and series2 respectively using pd.Series(). Finally, we concatenate these two series using pd.concat() and store the result in concatenated_series.

Example 2: Concatenating Numpy Array and Pandas DataFrame


import pandas as pd
import numpy as np

array1 = np.array([1, 2, 3])
dataframe1 = pd.DataFrame({'A': array1})

array2 = np.array([4, 5, 6])
dataframe2 = pd.DataFrame({'B': array2})

concatenated_dataframe = pd.concat([dataframe1, dataframe2])

print(concatenated_dataframe)
    

In this example, we create two numpy arrays array1 and array2. We then convert these arrays into pandas dataframes dataframe1 and dataframe2 respectively. Finally, we concatenate these dataframes using pd.concat() and store the result in concatenated_dataframe.

Related Post

Leave a comment