3
3
import pandas .computation .expressions as expr
4
4
5
5
6
- class eval_frame (object ):
6
+ class Eval (object ):
7
7
goal_time = 0.2
8
8
9
9
params = [['numexpr' , 'python' ], [1 , 'all' ]]
@@ -34,8 +34,11 @@ def time_mult(self, engine, threads):
34
34
df , df2 , df3 , df4 = self .df , self .df2 , self .df3 , self .df4
35
35
pd .eval ('df * df2 * df3 * df4' , engine = engine )
36
36
37
+ def teardown (self , engine , threads ):
38
+ expr .set_numexpr_threads ()
37
39
38
- class query_datetime_index (object ):
40
+
41
+ class Query (object ):
39
42
goal_time = 0.2
40
43
41
44
def setup (self ):
@@ -45,41 +48,19 @@ def setup(self):
45
48
self .s = Series (self .index )
46
49
self .ts = self .s .iloc [self .halfway ]
47
50
self .df = DataFrame ({'a' : np .random .randn (self .N ), }, index = self .index )
51
+ self .df2 = DataFrame ({'dates' : self .s .values ,})
52
+
53
+ self .df3 = DataFrame ({'a' : np .random .randn (self .N ),})
54
+ self .min_val = self .df3 ['a' ].min ()
55
+ self .max_val = self .df3 ['a' ].max ()
48
56
49
57
def time_query_datetime_index (self ):
50
58
ts = self .ts
51
59
self .df .query ('index < @ts' )
52
60
53
-
54
- class query_datetime_series (object ):
55
- goal_time = 0.2
56
-
57
- def setup (self ):
58
- self .N = 1000000
59
- self .halfway = ((self .N // 2 ) - 1 )
60
- self .index = date_range ('20010101' , periods = self .N , freq = 'T' )
61
- self .s = Series (self .index )
62
- self .ts = self .s .iloc [self .halfway ]
63
- self .df = DataFrame ({'dates' : self .s .values , })
64
-
65
61
def time_query_datetime_series (self ):
66
62
ts = self .ts
67
- self .df .query ('dates < @ts' )
68
-
69
-
70
- class query_with_boolean_selection (object ):
71
- goal_time = 0.2
72
-
73
- def setup (self ):
74
- self .N = 1000000
75
- self .halfway = ((self .N // 2 ) - 1 )
76
- self .index = date_range ('20010101' , periods = self .N , freq = 'T' )
77
- self .s = Series (self .index )
78
- self .ts = self .s .iloc [self .halfway ]
79
- self .N = 1000000
80
- self .df = DataFrame ({'a' : np .random .randn (self .N ), })
81
- self .min_val = self .df ['a' ].min ()
82
- self .max_val = self .df ['a' ].max ()
63
+ self .df2 .query ('dates < @ts' )
83
64
84
65
def time_query_with_boolean_selection (self ):
85
66
min_val , max_val = self .min_val , self .max_val
0 commit comments