import numpy as np 
import pandas as pd 
 
# create a sample dataframe 
df = pd.DataFrame({'A': [1, 2, -3, 4], 'B': [-5, 6, 7, -8], 'C': [9, -10, 11, 12], 'D': [13, -14, 15, -16]}) 
 
# remove negative values 
df = df.mask(df < 0, 0) 
 
# reshape to the largest possible square 
size = int(np.sqrt(df.size)) 
df = df.iloc[:size**2].values.reshape(size, size) 
df = pd.DataFrame(df) 
df