1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
| import numpy as np
| import pytest
|
| from pandas import (
| Period,
| PeriodIndex,
| period_range,
| )
| import pandas._testing as tm
|
|
| class TestPeriodRepresentation:
| """
| Wish to match NumPy units
| """
|
| @pytest.mark.parametrize(
| "freq, base_date",
| [
| ("W-THU", "1970-01-01"),
| ("D", "1970-01-01"),
| ("B", "1970-01-01"),
| ("h", "1970-01-01"),
| ("min", "1970-01-01"),
| ("s", "1970-01-01"),
| ("ms", "1970-01-01"),
| ("us", "1970-01-01"),
| ("ns", "1970-01-01"),
| ("M", "1970-01"),
| ("Y", 1970),
| ],
| )
| @pytest.mark.filterwarnings(r"ignore:PeriodDtype\[B\] is deprecated:FutureWarning")
| @pytest.mark.filterwarnings(
| "ignore:Period with BDay freq is deprecated:FutureWarning"
| )
| def test_freq(self, freq, base_date):
| rng = period_range(start=base_date, periods=10, freq=freq)
| exp = np.arange(10, dtype=np.int64)
|
| tm.assert_numpy_array_equal(rng.asi8, exp)
|
|
| class TestPeriodIndexConversion:
| def test_tolist(self):
| index = period_range(freq="Y", start="1/1/2001", end="12/1/2009")
| rs = index.tolist()
| for x in rs:
| assert isinstance(x, Period)
|
| recon = PeriodIndex(rs)
| tm.assert_index_equal(index, recon)
|
|