我有这个.log文件。我不知道如何将它们作为DataFrame读取
id | create_date
-----+----------------------------
318 | 2017-05-05 07:03:27.556697
456 | 2017-07-03 01:50:07.966652
249 | 2017-05-03 13:57:32.567373
答案 0 :(得分:2)
sep="|"
<强> |
强>
使用skiprows=[1]
作为列分隔符
<强> header=0
强>
忽略第二行,这只是装饰,并且解析最有问题
<强> parse_dates=[1]
强>
从第一行读取列名
<强> create_date
强>
将datetime64
列转换为pandas rename(columns=lambda x: x.strip())
格式(可选)
<强> index_col=0
强>
从列名中删除多余的空格
如果您希望将id
列设为索引而不是使用顺序列,则可能需要添加{{1}}。
答案 1 :(得分:0)
试试这个,
df=pd.read_csv('file_.csv',sep='|')
然后您可以通过多种方式删除-----+----------------------------
df[df[' id ']!='-----+----------------------------']
df[~df[' id '].str.startswith('-')]
df.drop(0)
#如果您的文件在任何其他地方包含-----+----------------------------
,例如footer
df[df[' create_date '].notnull()]
#默认情况下,当create_date列包含NaN时,它无法正常工作。输出:
id create_date
1 318 2017-05-05 07:03:27.556697
2 456 2017-07-03 01:50:07.966652
3 249 2017-05-03 13:57:32.567373