为了账号安全,请及时绑定邮箱和手机立即绑定

在数据框中拆分单元格

在数据框中拆分单元格

慕村225694 2023-04-18 17:25:26
我有一个 CSV,我将其读入数据框以删除某些列并进行一些操作。一些示例行是:20        2/5/1954 13:55          0.5           1821        2/5/1954 14:35          0.5         18.222        2/5/1954 16:35          0.5         18.5我想删除日期时间中的时间,例如,我得到的2/5/1954不是2/5/1954 13:55.我写了这个脚本:import pandas as pdfrom datetime import datetime as dtdf = pd.read_csv('habsos_20200310.csv', sep=',', error_bad_lines=False, index_col=False, dtype='unicode')pd.set_option('display.max_rows', None)# Get only the columns we care aboutdfSub = df[['sample_date','sample_depth','water_temp']]# Remove the NaN valuesdfClean = dfSub.dropna()# Select 0.5 depth measurements onlydfClean2 = dfClean.loc[df['sample_depth'] == '0.5']print(dfClean2)这给了我:             sample_date sample_depth   water_temp20        2/5/1954 13:55          0.5           1821        2/5/1954 14:35          0.5         18.222        2/5/1954 16:35          0.5         18.523        2/5/1954 16:52          0.5         18.524        2/5/1954 17:10          0.5         18.625        2/5/1954 17:25          0.5         18.826        2/5/1954 17:43          0.5           19我试图将这些行添加到我的脚本中以转换该sample_date列:new_df = dfClean2['sample_date'].str.split()[0]print(new_df)
查看完整描述

1 回答

?
Helenr

TA贡献1780条经验 获得超3个赞

评论已经建议您使用expand=True. 另一种选择是

dfClean2.sample_date = dfClean2.sample_date.str.split(' ').str.get(0)

但是,pandas 为 dtype 实现了许多方法datetimeparse_dates=True我建议您传递参数.read_csv()(使用 read_csv 处理日期时间)并.dt在该列上使用系列访问器。

dfClean2.sample_date = dfClean2.sample_date.dt.date


查看完整回答
反对 回复 2023-04-18
  • 1 回答
  • 0 关注
  • 65 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信