同じIDごとで欠損値以外の値をまとめるというプログラムを書きたいです。
→値があるセルをまとめて、一行にするというイメージです。
データフレームのイメージとしては、以下の通りです。
NaN = 欠損値
例えば、Bの患者はNaNだけなので、NaNだけの1行になる
Eの患者は、SBP178, HR72, SpO2 98, RR18のデータで1行になる
のような形です。
書いたコードはこちらです。
'ID'で括る
df_g = df.groupby('ID')
'ID'でくくられたデータフレームの中で'Vital_time'に最小値を含む行を抜き出す
def select(xx):
'PcrKey'に最小値を含む行を抜き出す
Key_r = xx[xx['time'] == min(xx['time']) ]
return Key_r
df_ture = df_g.apply(select)
→
TIMEで重複行があった場合は削除
Key_r = Key_r.drop_duplicates(subset='TIME')
このコードを追加したところ、上段にあるデータが採用され、他にデータあっても無視されてしまうので不都合です。
ご教授ください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/16 14:35