データフレームから正確に 1 行を抽出する条件を作成しました。
d2 = df[(df['l_ext']==l_ext) & (df['item']==item) & (df['wn']==wn) & (df['wd']==1)]
ここで、特定の列から値を取得したいと思います。
val = d2['col_name']
しかし、結果として、1 行 1 列 (つまり、1 つのセル) を含むデータフレームが取得されます。これは必要なものではありません。必要なのは 1 つの値 (1 つの浮動小数点数) です。これを pandas で実行するにはどうすればよいですか?
ベストアンサー1
1行だけのDataFrameがある場合は、最初の(唯一の)行にSeriesとしてアクセスします。iloc、次に列名を使用して値を入力します。
In [3]: sub_df
Out[3]:
A B
2 -0.133653 -0.030854
In [4]: sub_df.iloc[0]
Out[4]:
A -0.133653
B -0.030854
Name: 2, dtype: float64
In [5]: sub_df.iloc[0]['A']
Out[5]: -0.13365288513107493