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
53
54
55
56
57
58
59
60
61
62
63
| """
| Tests that work on both the Python and C engines but do not have a
| specific classification into the other test modules.
| """
| from io import StringIO
|
| import pytest
|
| from pandas import DataFrame
| import pandas._testing as tm
|
| xfail_pyarrow = pytest.mark.usefixtures("pyarrow_xfail")
|
|
| @xfail_pyarrow
| @pytest.mark.parametrize(
| "data,thousands,decimal",
| [
| (
| """A|B|C
| 1|2,334.01|5
| 10|13|10.
| """,
| ",",
| ".",
| ),
| (
| """A|B|C
| 1|2.334,01|5
| 10|13|10,
| """,
| ".",
| ",",
| ),
| ],
| )
| def test_1000_sep_with_decimal(all_parsers, data, thousands, decimal):
| parser = all_parsers
| expected = DataFrame({"A": [1, 10], "B": [2334.01, 13], "C": [5, 10.0]})
|
| result = parser.read_csv(
| StringIO(data), sep="|", thousands=thousands, decimal=decimal
| )
| tm.assert_frame_equal(result, expected)
|
|
| def test_euro_decimal_format(all_parsers):
| parser = all_parsers
| data = """Id;Number1;Number2;Text1;Text2;Number3
| 1;1521,1541;187101,9543;ABC;poi;4,738797819
| 2;121,12;14897,76;DEF;uyt;0,377320872
| 3;878,158;108013,434;GHI;rez;2,735694704"""
|
| result = parser.read_csv(StringIO(data), sep=";", decimal=",")
| expected = DataFrame(
| [
| [1, 1521.1541, 187101.9543, "ABC", "poi", 4.738797819],
| [2, 121.12, 14897.76, "DEF", "uyt", 0.377320872],
| [3, 878.158, 108013.434, "GHI", "rez", 2.735694704],
| ],
| columns=["Id", "Number1", "Number2", "Text1", "Text2", "Number3"],
| )
| tm.assert_frame_equal(result, expected)
|
|