前提・実現したいこと
Pythonで統計データを算出するプログラムを作成中です。
pandasのDataFrameを用いて、任意の列に"b"という文字列が入っている場合に
"bを検知"という文字列を出力したいと考えております。
今後、文字列"b"を検知した際に"A"列の値を用いて統計量を算出したいと考えています。
そのため、ブールインデックス参照などを用いた解決ではなく、
if文を動作させられる助言がいただけますと幸いです。
発生している問題・エラーメッセージ
該当のソースコードでは"bを検知"という文字列が出力されない。
該当のソースコード
Python
1df_test = pd.DataFrame({'A': [-20, -10, 0, 10, 20], 2 'B': [1, 2, 3, 4, 5], 3 'C': ['a', 'b', 'b', 'b', 'a']}) 4 5for itr in range(0, len(df_test), 1): 6 print(itr) 7 if str(df_test.loc[itr:itr, "C"]) == "b": 8 print("bを検知")
試したこと
print(df_test.loc[1:1, "C"])を出力し、
"b"という文字列を出力できることが分かりました。
ただ、dtype: objectと出力結果に出ていたので、
if文ではstr()で型を文字列型に変換しましたがうまく出力されませんでした。
補足情報(FW/ツールのバージョンなど)
Python3.6
Visual Studio 2019
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/24 00:54