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.floor(np.sqrt(df.size))) 
df = df.to_numpy()[:size**2].reshape(size, size) 
df = pd.DataFrame(df)
df