【发布时间】:2018-04-12 12:27:03
【问题描述】:
假设我有一个 pandas 数据框,由:
df2 = pd.DataFrame(np.random.randint(low=0, high=10, size=(5, 4)),
columns ['value', 'a', 'b', 'c'])
df2['low'] = ''
df2
value a b c low
0 5 3 7 9
1 9 3 7 9
2 2 5 0 8
3 2 8 2 7
4 5 5 7 7
我需要获取我的值在低列中的区间字母。
例如对于 value = 5 的第一个 lign。 我想确定该值介于“a”和“b”之间,并将列中的字母“a”归为低。
如果值 a 或 >b 或 >c 则低 = Max (a;b;c)
预期输出:
value a b c low
0 5 3 7 9 a
1 9 3 7 9 c
2 2 5 0 8 b
3 2 8 2 7 b
4 5 5 7 7 a
我提供了以下内容,但不确定如何使用它来增加框架:
if min(a, b, c)<x<max(a,b,c):
print(min(a,b,c))
else:
if x<min(a,b,c) :
print('None')
else:
print(max(a,b,c))
有什么建议可以有效地做到这一点吗?
【问题讨论】:
-
将其添加到您的问题中,因此显示预期的输出数据框。这有很大帮助。谢谢。
-
嗨,斯科特。感谢您的反馈,我更新了问题。
标签: python pandas dataframe intervals