从.log / .txt文件创建列-python

时间:2019-12-09 10:10:06

标签: python pandas

我正在导入带有如下所示熊猫的.log文件

10:30:03:8600 Rx 1 0x014 9 B5 45 5B 81 95 02 50 01  0x6E (Enhanced)         
10:30:04:0280 Rx 1 0x015 8 77 B9 60 AE 8C 47 E6 20  0x3A (Enhanced)   
...   
[93 rows x 1 columns]

因此,所有内容都在1列中

我想做的是:

将我拥有的1列拆分为用空格“”分隔的每一列,并添加标题。

为此,我尝试了:

  

df = pd.read_csv('df.log',
                   定界符='',
                   名称= ['时间','Tx / Rx','ID','温度','压力'...])

我希望能够从第一行的 B5 01 中读取值。因此,在将一列拆分为更多列之后,我计划对所有行使用.ilocdf.iloc[5:12]一样。

我想看看这个,所以我可以轻松读取数据:

  

'ID''温度','压力'...
   B5 45 B5 ......
   77 B9 B60 ...

2 个答案:

答案 0 :(得分:0)

您可以尝试应用bin/connect-standalone.sh config/connect-standalone.properties connector1.properties ,然后将带有列表的列转换为单独的列。

str.split

答案 1 :(得分:0)

我为您提供单线解决方案:

import pandas as pd
df= pd.read_csv("df.log", delimiter = " ", names = ['Time', 'Tx/Rx','ID','Temp','Pressure' ...])

请注意,在这种情况下,分隔符为空格。 如果要在打印时摆脱索引:

print(df.to_string(index=False))

请尝试一下,告诉我它是否适合您:)