Sunday, September 29, 2019
Convert Timestamp to str value python pandas dataframe
Answer
I have dataframe
which looks like this
Date Player Fee
0 2017-01-08 Steven Berghuis 6500000
1 2017-07-18 Jerry St. Juste 4500000
2 2017-07-18 Ridgeciano Haps 600000
3 2017-01-07 Sofyan Amrabat 400000
I want to change every date value to str if they match the condition
def is_in_range(x):
ses1 = pd.to_datetime('2013-02-01')
ses2 = pd.to_datetime('2014-02-01')
ses3 = pd.to_datetime('2015-02-01')
ses4 = pd.to_datetime('2016-02-01')
ses5 = pd.to_datetime('2017-02-01')
ses6 = pd.to_datetime('2018-02-01')
if x < ses1 :
x = '2012-13'
if x > ses2 and x < ses3 :
x = '2013-14'
if x > ses3 and x < ses4 :
x = '2014-15'
if x > ses4 and x < ses5 :
x = '2015-16'
if x > ses5 and x < ses6 :
x = '2016-17'
return ses6
aj = ajax_t['Date'].apply(is_in_range)
aj
TypeError Traceback (most recent call last)
in ()
18 x = '2016-17'
19 return ses6
---> 20 aj = ajax_t['Date'].apply(is_in_range)
21 aj
/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/core/series.py
in apply(self, func, convert_dtype, args, **kwds) 2353
else: 2354 values = self.asobject
-> 2355 mapped = lib.map_infer(values, f, convert=convert_dtype) 2356 2357 if len(mapped) and
isinstance(mapped[0], Series):
pandas/_libs/src/inference.pyx in pandas._libs.lib.map_infer
(pandas/_libs/lib.c:66645)()
in is_in_range(x)
15 if x > ses4 and x < ses5 :
16 x = '2015-16'
---> 17 if x > ses5 and x < ses6 :
18 x = '2016-17'
19 return ses6
pandas/_libs/tslib.pyx in pandas._libs.tslib._Timestamp.richcmp
(pandas/_libs/tslib.c:20281)()
TypeError: Cannot compare type 'Timestamp' with type 'str'
I get this error any suggestions,
Kindly
hard drive - Leaving bad sectors in unformatted partition?
Laptop was acting really weird, and copy and seek times were really slow, so I decided to scan the hard drive surface. I have a couple hundr...
-
Using Windows 7. When I RDP to a PC I'd like to be able to logout of the session without the screen reverting to a Ctrl+Alt+Del Login sc...
-
I tried adding grubx64.efi in the Windows Boot Manager using BCDEdit. However when I boot up my computer and try to start GRUB from Windows ...
-
So I installed Ubuntu Netbook Remix 9.10 onto my Asus EeePC 1008HA netbook. It worked perfectly and was pretty quick. Restarting, suspending...
No comments:
Post a Comment