我有一个 csv 文件datetime,name20-10-2019 14:55,a19-10-2019 14:55,b当我应用地图方法时,第二列消失了df.info()#df['datetime'] = df['datetime'].astype(str) # if your object is datatimedf1 = df['datetime'].map(lambda x: x.split(' ')[0])df1.to_frame()我的出局datetime0 2019-10-201 2019-10-19我的预期输出还包括列名“名称”。有没有regex做这个操作
2 回答

holdtom
TA贡献1805条经验 获得超10个赞
并不是 map 删除了一个列,或者根本没有删除一个列。您只需从数据框中选择一列,这就是您最终得到的。
尝试
df['datetime'] = df['datetime'].map(...)
改为更新原始数据框中的日期时间列。

30秒到达战场
TA贡献1828条经验 获得超6个赞
import pandas as pd
df = pd.read_csv('time.csv')
#df['datetime'] = pd.to_datetime(df.datetime)
#df['datetime'] = df['datetime'].astype(str)
df1 = df['datetime'].map(lambda x: x.split(' ')[0])
df1.to_frame()
df['datetime'] = df['datetime'].map(lambda x: x.split(' ')[0])
import re
def split_it(year):
return re.findall('(\d\d\d\d)', year)
df['datetime'] = df['datetime'].apply(split_it)
添加回答
举报
0/150
提交
取消