前提・実現したいこと
EDINETコードと会計期間終了日のいずれかが変わった場合、その直前にフラグ1、変わらない場合にその直前にフラグ0を立てたい。
発生している問題・エラーメッセージ
<ソースコード実行結果>
EDINETコード 会計期間終了日
E00004 2016-05-31 0.0
2019-05-31 1.0
E00008 2016-03-31 0.0
2016-03-31 0.0
2020-03-31 1.0
...
E35303 2020-03-31 1.0
E35307 2019-12-31 1.0
E35323 2019-12-31 1.0
E35335 2020-03-31 1.0
E35487 2020-03-31 1.0
該当のソースコード
y_column = 'フラグ'
flag = np.array([np.nan] * len(df), dtype=np.float32)
edinet_codes = df.index.map(lambda x: x[0])
df['会計期間終了日'] = df.index.map(lambda x: x[0])
prev_code = None
prev_date = None
for i, [code, date] in enumerate(zip(edinet_codes, df['会計期間終了日'])):
if (prev_date != date) | (prev_code !=code):
flag[i -1] = 1
prev_date = date
prev_code = code
else:
flag[i -1] =0
df[y_column] = flag
print(df[y_column])
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー