Skip to content

Commit 61d8e6e

Browse files
committed
perf bench for _concat_date_cols
1 parent 846f0bf commit 61d8e6e

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

asv_bench/benchmarks/io/csv.py

+29
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,35 @@ def time_read_csv(self, infer_datetime_format, format):
7777
infer_datetime_format=infer_datetime_format)
7878

7979

80+
class ReadCSVConcatDatetime(StringIORewind):
81+
82+
iso8601 = '%Y-%m-%d %H:%M:%S'
83+
84+
def setup(self):
85+
rng = date_range('1/1/2000', periods=50000, freq='S')
86+
self.StringIO_input = StringIO('\n'.join(
87+
rng.strftime(self.iso8601).tolist()))
88+
89+
def time_read_csv(self):
90+
read_csv(self.data(self.StringIO_input),
91+
header=None, names=['foo'], parse_dates=['foo'],
92+
infer_datetime_format=False)
93+
94+
95+
class ReadCSVConcatDatetimeBadDateValue(StringIORewind):
96+
97+
params = (['nan', '0', ''],)
98+
param_names = ['bad_date_value']
99+
100+
def setup(self, bad_date_value):
101+
self.StringIO_input = StringIO(('%s,\n' % bad_date_value) * 50000)
102+
103+
def time_read_csv(self, bad_date_value):
104+
read_csv(self.data(self.StringIO_input),
105+
header=None, names=['foo', 'bar'], parse_dates=['foo'],
106+
infer_datetime_format=False)
107+
108+
80109
class ReadCSVSkipRows(BaseIO):
81110

82111
fname = '__test__.csv'

0 commit comments

Comments
 (0)