这是我当前使用pandas的DataFrame,它在order_number
列中有一些混合类型值
order_number created_time customer_id driver_id
153280 40487 2017-02-01 12:39:25.887 1413 96.0
153281 118898 2017-02-01 10:52:38.822 51640 5382.0
153282 "36968" 2017-02-02 20:54:43.141 49072 6851.0
153283 "68383" 2017-02-02 19:01:08.52 28742 4479.0
153284 "56261" 2017-02-01 06:09:53.245 31656 NaN
我想从订单号中删除引号,以便DataFrame如下所示:
order_number created_time customer_id driver_id
153280 40487 2017-02-01 12:39:25.887 1413 96.0
153281 118898 2017-02-01 10:52:38.822 51640 5382.0
153282 36968 2017-02-02 20:54:43.141 49072 6851.0
153283 68383 2017-02-02 19:01:08.52 28742 4479.0
153284 56261 2017-02-01 06:09:53.245 31656 NaN
我已经尝试使用如下所示的替换方法,但它不起作用。
df['order_number'].replace('""','')
有人可以帮忙吗? 任何建议将不胜感激:)
答案 0 :(得分:2)
我认为你需要str.strip
:
df['order_number'] = df['order_number'].str.strip('"').astype(float)
或为替换regex=True
添加参数substring
:
df['order_number'] = df['order_number'].replace('"','', regex=True).astype(float)
最后将值转换为float
s。