查找数字与两列相交的行
Finding row that has number instersecting two columns
数据有三列。我需要找到数字在第二列和第三列之间相交的行。例如,在下面的数据中,哪一行的第二列和第三列之间的数字是 15?
a 1 5
b 7 10
c 13 17
d 20 24
理想的结果应该是
c 13 17
因为它有“15”与第二列和第三列之间的该行相交。有没有办法使用 Python(特别是 Python 2.7)来做到这一点?
你是这个意思?
import pandas as pd
df = pd.DataFrame([('a', 1, 5), ('b', 7, 10), ('c', 13, 17), ('d', 20, 24)],
columns=['col1', 'col2', 'col3'])
df[(df.col2 < 15) & (df.col3 > 15)]
产量...
col1 col2 col3
2 c 13 17
另一种方法,使用query:
In [7]: df
Out[7]:
tag start end
0 a 1 5
1 b 7 10
2 c 13 17
3 d 20 24
In [8]: df.query('start < 15 < end')
Out[8]:
tag start end
2 c 13 17
数据有三列。我需要找到数字在第二列和第三列之间相交的行。例如,在下面的数据中,哪一行的第二列和第三列之间的数字是 15?
a 1 5
b 7 10
c 13 17
d 20 24
理想的结果应该是
c 13 17
因为它有“15”与第二列和第三列之间的该行相交。有没有办法使用 Python(特别是 Python 2.7)来做到这一点?
你是这个意思?
import pandas as pd
df = pd.DataFrame([('a', 1, 5), ('b', 7, 10), ('c', 13, 17), ('d', 20, 24)],
columns=['col1', 'col2', 'col3'])
df[(df.col2 < 15) & (df.col3 > 15)]
产量...
col1 col2 col3
2 c 13 17
另一种方法,使用query:
In [7]: df
Out[7]:
tag start end
0 a 1 5
1 b 7 10
2 c 13 17
3 d 20 24
In [8]: df.query('start < 15 < end')
Out[8]:
tag start end
2 c 13 17