@@ -3016,35 +3016,35 @@ def test_match_findall_flags(self):
3016
3016
result = data .str .contains (pat , flags = re .IGNORECASE )
3017
3017
assert result [0 ]
3018
3018
3019
- # def test_encode_decode(self):
3020
- # base = Series([u('a'), u('b'), u('a\xe4')])
3021
- # series = base.str.encode('utf-8')
3022
- #
3023
- # f = lambda x: x.decode('utf-8')
3024
- # result = series.str.decode('utf-8')
3025
- # exp = series.map(f)
3026
- #
3027
- # tm.assert_series_equal(result, exp)
3028
- #
3029
- # def test_encode_decode_errors(self):
3030
- # encodeBase = Series([u('a'), u('b'), u('a\x9d')])
3031
- #
3032
- # pytest.raises(UnicodeEncodeError, encodeBase.str.encode, 'cp1252')
3033
- #
3034
- # f = lambda x: x.encode('cp1252', 'ignore')
3035
- # result = encodeBase.str.encode('cp1252', 'ignore')
3036
- # exp = encodeBase.map(f)
3037
- # tm.assert_series_equal(result, exp)
3038
- #
3039
- # decodeBase = Series([b'a', b'b', b'a\x9d'])
3040
- #
3041
- # pytest.raises(UnicodeDecodeError, decodeBase.str.decode, 'cp1252')
3042
- #
3043
- # f = lambda x: x.decode('cp1252', 'ignore')
3044
- # result = decodeBase.str.decode('cp1252', 'ignore')
3045
- # exp = decodeBase.map(f)
3046
- #
3047
- # tm.assert_series_equal(result, exp)
3019
+ def test_encode_decode (self ):
3020
+ base = Series ([u ('a' ), u ('b' ), u ('a\xe4 ' )])
3021
+ series = base .str .encode ('utf-8' )
3022
+
3023
+ f = lambda x : x .decode ('utf-8' )
3024
+ result = series .str .decode ('utf-8' )
3025
+ exp = series .map (f )
3026
+
3027
+ tm .assert_series_equal (result , exp )
3028
+
3029
+ def test_encode_decode_errors (self ):
3030
+ encodeBase = Series ([u ('a' ), u ('b' ), u ('a\x9d ' )])
3031
+
3032
+ pytest .raises (UnicodeEncodeError , encodeBase .str .encode , 'cp1252' )
3033
+
3034
+ f = lambda x : x .encode ('cp1252' , 'ignore' )
3035
+ result = encodeBase .str .encode ('cp1252' , 'ignore' )
3036
+ exp = encodeBase .map (f )
3037
+ tm .assert_series_equal (result , exp )
3038
+
3039
+ decodeBase = Series ([b'a' , b'b' , b'a\x9d ' ])
3040
+
3041
+ pytest .raises (UnicodeDecodeError , decodeBase .str .decode , 'cp1252' )
3042
+
3043
+ f = lambda x : x .decode ('cp1252' , 'ignore' )
3044
+ result = decodeBase .str .decode ('cp1252' , 'ignore' )
3045
+ exp = decodeBase .map (f )
3046
+
3047
+ tm .assert_series_equal (result , exp )
3048
3048
3049
3049
def test_normalize (self ):
3050
3050
values = ['ABC' , u'ABC' , u'123' , np .nan , u'アイエ' ]
@@ -3130,9 +3130,7 @@ def test_method_on_bytes(self):
3130
3130
lhs = Series (np .array (list ('abc' ), 'S1' ).astype (object ))
3131
3131
rhs = Series (np .array (list ('def' ), 'S1' ).astype (object ))
3132
3132
if compat .PY3 :
3133
- message = 'Can only use .str accessor with string values'
3134
- with tm .assert_raises_regex (AttributeError , message ):
3135
- lhs .str
3133
+ pytest .raises (TypeError , lhs .str .cat , rhs , sep = ',' )
3136
3134
else :
3137
3135
result = lhs .str .cat (rhs )
3138
3136
expected = Series (np .array (
0 commit comments