Assuming you're wanting to backfill values and then drop any duplicates that appear in any of the columns this example works:
import pandas as pd
import numpy as np
data = [
['POINT_1.1', 'POINT_1.2', pd.NA],
[pd.NA, pd.NA, 'POINT_1.3'],
['POINT_2.1', 'POINT_2.2', pd.NA],
[pd.NA, pd.NA, 'POINT_2.3']
]
df = pd.DataFrame(data)
df
# 0 1 2
# 0 POINT_1.1 POINT_1.2 <NA>
# 1 <NA> <NA> POINT_1.3
# 2 POINT_2.1 POINT_2.2 <NA>
# 3 <NA> <NA> POINT_2.3
t = df.T.bfill().T.bfill()
t
# 0 1 2
# 0 POINT_1.1 POINT_1.2 POINT_1.3
# 2 POINT_2.1 POINT_2.2 POINT_2.3
for column in t.columns:
t = t.drop_duplicates(column)
t
# 0 1 2
# 0 POINT_1.1 POINT_1.2 POINT_1.3
# 2 POINT_2.1 POINT_2.2 POINT_2.3