2017-04-03 80 views
1

我有一个CSV两列文件(A和B)的数据:大熊猫,选择浮点值

a b 
30 3000.01 
5 3000.02 
1 3001.01 
5 3001.02 

我使用熊猫尝试和选择行仅具有在” 0.01" 的价值观列“b”。 所以输出应为:

a b 
30 3000.01 
1 3001.01 

基本上是有办法在B列与” 0.01" 结束值的指定的标准搜索/选择行?

回答

3

我最好使用模数来剥离小数然后np.isclose,以产生一个布尔阵列

df[np.isclose((df.b % 1).values, .01)] 

    a  b 
0 30 3000.01 
2 1 3001.01 
+0

我喜欢这个,谢谢你的帮助! –

+0

好主意:'df.b%1'! – MaxU

+0

这里太复杂了! :) –

2

容易peasey

df['mystring'] = df.b.astype(str) 
df[df.mystring.str.contains(".01")] 
+0

多德。谢谢。 idk为什么这个小任务如此困难。 –