如何在python中读取.log文件?
我有这个.log文件。我不知道如何将它们理解为数据帧如何在python中读取.log文件?,python,pandas,csv,dataframe,Python,Pandas,Csv,Dataframe,我有这个.log文件。我不知道如何将它们理解为数据帧 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 参数 sep=“|” 使用|作为列分隔符 skiprows=[1] 忽略第二行,它只是装饰,是最
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
参数
使用sep=“|”
作为列分隔符|
忽略第二行,它只是装饰,是最难解析的skiprows=[1]
从第一行读取列名标题=0
将解析日期=[1]
列转换为create_date
格式(可能是可选的)datetime64
从列名中删除额外的空白重命名(columns=lambda x:x.strip())
id
列作为索引,而不是使用顺序索引,则可能需要添加index\u col=0
参数
使用sep=“|”
作为列分隔符|
忽略第二行,它只是装饰,是最难解析的skiprows=[1]
从第一行读取列名标题=0
将解析日期=[1]
列转换为create_date
格式(可能是可选的)datetime64
从列名中删除额外的空白重命名(columns=lambda x:x.strip())
id
列作为索引,而不是使用连续的索引,则可能需要添加index\u col=0
。试试这个
df=pd.read_csv('file_.csv',sep='|')
然后您可以通过多种方式删除-----+------------------------------------
df[df['id']!='-+-----------------------------------']
df[~df['id'].str.startswith('-')]
df.drop(0)
#如果您的文件在任何其他位置(例如页脚)包含-----+-------------------------------
,它将不起作用
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
试试这个
df=pd.read_csv('file_.csv',sep='|')
然后您可以通过多种方式删除-----+------------------------------------
df[df['id']!='-+-----------------------------------']
df[~df['id'].str.startswith('-')]
df.drop(0)
#如果您的文件在任何其他位置(例如页脚)包含-----+-------------------------------
,它将不起作用
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
它真的是那种格式吗?用ascii艺术线条来分隔行和列?@filippo是的,真实故事:3它真的是那种格式吗?用ascii艺术线条来划分行和列?@filippo是的,真实故事:3Tks@filipo,它并没有解决我的问题,但它给了我解决问题的线索。Tks@filipo,它并没有解决我的问题,但它给了我解决问题的线索。