各測定タイプが異なる深さの範囲をカバーするボアホールからの地下測定を扱っています。この場合、深度が指標として使用されています。
各測定タイプのデータ (非 NaN 値) の最初および/または最後の出現の深さ (インデックス) を見つける必要があります。
データフレームの最初または最後の行の深さ (インデックス) を取得するのは簡単です:df.index[0]またはdf.index[-1]. トリックは、特定の列の最初または最後の非 NaN オカレンスのインデックスを見つけることです。
df = pd.DataFrame([[500, np.NaN, np.NaN, 25],
[501, np.NaN, np.NaN, 27],
[502, np.NaN, 33, 24],
[503, 4, 32, 18],
[504, 12, 45, 5],
[505, 8, 38, np.NaN]])
df.columns = ['Depth','x1','x2','x3']
df.set_index('Depth')
理想的なソリューションは、x1 の最初の出現に対して 503、x2 の最初の出現に対して 502、および x3 の最後の出現に対して 504 のインデックス (深さ) を生成します。
