![](/img/trans.png)
[英]How to fetch a column header if a particular condition is met based on row and column value of the dataframe?
[英]How to fetch value of particular column with where condition in pandas?
我下面有数据帧,仅在A = 12.0时才需要获取D的值。
A B C D
Row_1 12.0 7.0 20 14.0
Row_2 4.0 2.0 16 3.0
Row_3 5.0 54.0 11 NaN
Row_4 NaN 3.0 3 2.0
Row_5 1.0 NaN 8 6.0
我已经试过了,但是报错了:
result = df.loc['A'==12.0, 'D']
print(result)
我将如何实现?
尝试这个:
import pandas as pd
import numpy as np
df = pd.DataFrame({'A':[12.0, 4.0, 5.0, np.nan, 1.0], 'B':[7.0, 2.0, 54.0, 3.0, np.nan], 'C':[20, 16, 11, 3, 8], 'D':[14.0, 3.0, np.nan, 2.0, 6.0]})
print(df.loc[df.A==12.0]['D'])
print(df.loc[df.A==12.0]['D'][0])
输出:
0 14.0
Name: D, dtype: float64
14.0
因为您正在寻找'A'== 12.0,所以会出现错误,因此您基本上是在寻找False,即不在数据框中。 你需要
result = df.loc[df['A']==12.0, 'D'][0]
最后的[0]是df.loc返回的系列的第一个元素
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.