Вы можете использовать pandas для построения структуры данных, а затем осторожное использование функции apply()
поможет вам получить нужное преобразование.
import pandas as pd
import math
data = (
[1, None, None,],
[None, 2 , None,],
[None, 3 , None,],
[None, None, 4, ],
[5 , None, None,],
[6 , 6 , None,],
[7 , None, None,],
[None, None, 8, ],
[9 , None, 9, ],
[10, 10, 10, ],
)
df = pd.DataFrame(columns=('A', 'B', 'C'))
# Load in data
for row in data:
df = df.append(pd.Series(row, index=df.columns), ignore_index=True)
print(df)
def calc_y(row):
for item in row:
if not math.isnan(item):
return item
df['Y'] = df.apply(calc_y, axis=1)
print(df)