title: How to Convert Abnormal Timestamp into datetime in Pandas dataframe
body: <p>I'm creating a usage heatmap for some user analytics. The Y-axis will be day of the week and the X-axis will be hour of the day (24:00). I pulled the data from the API.(Note that this actually produces 6,000 rows of data)</p>
  
  <p>IN: </p>
  
  <pre><code>import requests
  import json
  
  response = requests.get("api.url")
  data = response.json()
  df=pd.DataFrame(data['Sessions'])
  df.dtypes
  print(df['StartTime'])
  </code></pre>
  
  <p>OUT:</p>
  
  <pre><code>0     2019-01-29T22:08:40
  1     2019-01-29T22:08:02
  2     2019-01-29T22:05:10
  3     2019-01-29T21:34:30
  4     2019-01-29T21:32:49
  Name: StartTime, Length: 100, dtype: object
  </code></pre>
  
  <p>I would normally convert the object into pandas.dt and then split it into two columns:</p>
  
  <p>IN:</p>
  
  <pre><code>df['StartTime'] =  pd.to_datetime(df['StartTime'], format='%d%b%Y:%H:%M:%S.%f')
  df['Date'] = [d.date() for d in df['StartTime']]
  df['Time'] = [d.time() for d in df['StartTime']]
  </code></pre>
  
  <p>OUT:</p>
  
  <pre><code>'     StartTime                Date           Time
  0     2019-01-29T22:08:40      2019-01-29     22:08:40
  1     2019-01-29T22:08:02      2019-01-29     22:08:02
  2     2019-01-29T22:05:10      2019-01-29     22:05:10
  3     2019-01-29T21:34:30      2019-01-29     21:34:30
  4     2019-01-29T21:32:49      2019-01-29     21:32:49
  </code></pre>
  
  <p>This isn't working because of that funky "T" in the middle of my timestamp and possibly because of the datatype.</p>
  
  <p>I need to remove the T so I can convert this to a standard datetime format, then I need to separate Date and Time into their own columns. BONUS: I'd like to bring only the hour into its own column. Instead of 22:08:02, it would just be 22.</p>