Python 从pandas中的数据帧中选择vlaues
给定格式的数据帧Python 从pandas中的数据帧中选择vlaues,python,pandas,Python,Pandas,给定格式的数据帧 A B C D ....... ........ 我想选择B列中的值大于0.6*列中最后一个值的行。例如 输入: A B C 1 0 5 2 3 4 3 6 6 4 8 1 5 9 3 输出: A B C 3 6 6 4 8 1 5 9 3 我目前正在做以下工作 x = df.loc[df.tail(1).index,'B'] 返回与数据帧最后一行的coulmn B的索引和值对应的序列对象,然后 new_df = df.[df.B > x]
A B C D
.......
........
我想选择B列中的值大于0.6*列中最后一个值的行。例如
输入:
A B C
1 0 5
2 3 4
3 6 6
4 8 1
5 9 3
输出:
A B C
3 6 6
4 8 1
5 9 3
我目前正在做以下工作
x = df.loc[df.tail(1).index,'B']
返回与数据帧最后一行的coulmn B的索引和值对应的序列对象,然后
new_df = df.[df.B > x]
但是我得到了错误
ValueError:序列长度必须匹配才能进行比较
如何执行查询?您需要首先使用tail获取B列的最后一个值,然后乘以0.6
df[df['B'] > df['B'].tail(1).values[0] * 0.6]