前提・実現したいこと
Python で Pandas を使用してデータ整形をしています。
PandasのDataFrameで「特定の値(1つだけ)」を検索して抽出したいのですが、うまいやり方が見つかりません。
最終的に必ずindex等の付属情報がついてきてしまったり、コード行数が増えたりしてしまいます。
通常はどう書くものなのでしょうか・・・
・index の値はデフォルトの数字連番
・列「short_common_tags」で値「SecCode」を検索する
・検索してヒットしたときの列「値」の値を取得する
・最後に取得してきた列「値」の値だけを表示する
ご教授お願いします。
該当のソースコード
index = maskdata_df.index.values[maskdata_df['short_common_tags']=='SecCode']
code = maskdata_df.loc[index,'値']
print(code)
76 60480
Name: 値, dtype: object
※
maskdata_df:DataFrame
short_common_tags:検索対象の列名
SecCode:「short_common_tags」の値の1つ
試したこと
・以下のようにindexを指定するといいのですが、indexは対象データによって値が変わるので必ず変数にしたいです。
print( maskdata_df.loc[76,'値'])
60480
・或いは、一度配列を変数に代入しても上手くいきますが、行数が増え、他にうまいやり方があるのでは?と思ってしまいます。
a = code.values
print(a[0])
60480
DataFrame の型が分かっていないのか、頭が混乱しています。。。
※その他の実行例
・print(code)
76 60480
Name: 値, dtype: object
・print(str(code))
76 60480
Name: 値, dtype: object
・print(code.values)
[60480]
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/16 13:30